//構(gòu)造塊:直接在類中定義且沒有加static關(guān)鍵字的代碼塊稱為{}構(gòu)造代碼塊。構(gòu)造代碼塊在創(chuàng)建對象時被調(diào)用,每次創(chuàng)建對象都會被調(diào)用,并且構(gòu)造代碼塊的執(zhí)行次序優(yōu)先于類構(gòu)造函數(shù)。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、新都網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、新都網(wǎng)絡(luò)營銷、新都企業(yè)策劃、新都品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供新都建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
public class CodeBlock02
{
{
System.out.println("第一代碼塊");
}
public CodeBlock02(){
System.out.println("構(gòu)造方法");
}
{
System.out.println("第二構(gòu)造塊");
}
public static void main(String[] args){
new CodeBlock02();
new CodeBlock02();
new CodeBlock02();
}
}
/**
執(zhí)行結(jié)果:
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法*/
代碼如下
public class Rectangle {
private double length = 1;
private double width = 1;
public Rectangle(){}
public Rectangle(double length,double width){
this.length = length;
this.width = width;
}
public double getArea(){
return length*width;
}
public double getPerimeter(){
return 2*(length + width);
}
}
如果有幫助到你,請點擊采納
/**
* @author geek
*/
public class Cylinder {
private double radius,
height;
public Cylinder() {
}
public Cylinder(double radius, double height) {
this.radius = radius;
this.height = height;
}
public double getVolume(){
return Math.PI*radius*radius*height;
}
public static void main(String[] args) {
Cylinder c=new Cylinder(3,7);
System.out.println("半徑"+c.radius);
System.out.println("高"+c.height);
System.out.printf("體積%.2f",c.getVolume());
}
}
構(gòu)造函數(shù):執(zhí)行時間比構(gòu)造代碼塊時間晚,也是在對象初始化的時候運行。沒有返回值,構(gòu)造函數(shù)名稱和類名一致。
構(gòu)造代碼塊:執(zhí)行時間比靜態(tài)代碼塊晚,比構(gòu)造函數(shù)早,和構(gòu)造函數(shù)一樣,只在對象初始化的時候運行。沒有名字、參數(shù)和返回值。
靜態(tài)代碼塊:最早執(zhí)行,類被載入內(nèi)存時執(zhí)行,只執(zhí)行一次。沒有名字、參數(shù)和返回值,有關(guān)鍵字static。
靜態(tài)代碼塊只會在類被載入內(nèi)存時加載一次,是最先執(zhí)行的,然后是構(gòu)造代碼塊,最后才是構(gòu)造函數(shù)。構(gòu)造代碼塊和構(gòu)造函數(shù)都是在對象創(chuàng)建的時候執(zhí)行,有幾個對象就會執(zhí)行幾次。
//構(gòu)造塊:直接在類中定義且沒有加static關(guān)鍵字的代碼塊稱為{}構(gòu)造代碼塊。構(gòu)造代碼塊在創(chuàng)建對象時被調(diào)用,每次創(chuàng)建對象都會被調(diào)用,并且構(gòu)造代碼塊的執(zhí)行次序優(yōu)先于類構(gòu)造函數(shù)。
public class CodeBlock02
{
{
System.out.println("第一代碼塊");
}
public CodeBlock02(){
System.out.println("構(gòu)造方法");
}
{
System.out.println("第二構(gòu)造塊");
}
public static void main(String[] args){
new CodeBlock02();
new CodeBlock02();
new CodeBlock02();
}
}
/**
執(zhí)行結(jié)果:
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法
第一代碼塊
第二構(gòu)造塊
構(gòu)造方法*/