重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
//构造块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站建设、成都网站建设、新都网络推广、微信平台小程序开发、新都网络营销、新都企业策划、新都品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供新都建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
public class CodeBlock02
{
{
System.out.println("第一代码块");
}
public CodeBlock02(){
System.out.println("构造方法");
}
{
System.out.println("第二构造块");
}
public static void main(String[] args){
new CodeBlock02();
new CodeBlock02();
new CodeBlock02();
}
}
/**
执行结果:
第一代码块
第二构造块
构造方法
第一代码块
第二构造块
构造方法
第一代码块
第二构造块
构造方法*/
代码如下
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());
}
}
构造函数:执行时间比构造代码块时间晚,也是在对象初始化的时候运行。没有返回值,构造函数名称和类名一致。
构造代码块:执行时间比静态代码块晚,比构造函数早,和构造函数一样,只在对象初始化的时候运行。没有名字、参数和返回值。
静态代码块:最早执行,类被载入内存时执行,只执行一次。没有名字、参数和返回值,有关键字static。
静态代码块只会在类被载入内存时加载一次,是最先执行的,然后是构造代码块,最后才是构造函数。构造代码块和构造函数都是在对象创建的时候执行,有几个对象就会执行几次。
//构造块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。
public class CodeBlock02
{
{
System.out.println("第一代码块");
}
public CodeBlock02(){
System.out.println("构造方法");
}
{
System.out.println("第二构造块");
}
public static void main(String[] args){
new CodeBlock02();
new CodeBlock02();
new CodeBlock02();
}
}
/**
执行结果:
第一代码块
第二构造块
构造方法
第一代码块
第二构造块
构造方法
第一代码块
第二构造块
构造方法*/