java之路 构造代码块注意事项

 1 /*
 2 构造代码块:
 3
 4 构造代码块的作用:给对象进行统一的初始化。
 5
 6 构造函数的作用: 给对应的对象进行初始化。
 7
 8
 9 构造代码块的格式:
10
11     {
12         构造代码块
13     }
14
15 注意: 构造代码块的大括号必须位于成员 位置上。
16
17
18 代码块的类别:
19     1. 构造代码块。
20     2. 局部代码块.   大括号位于方法之内。  作用:缩短局部 变量 的生命周期,节省一点点内存。
21     3. 静态代码块  static
22 */
23
24 class Baby{
25
26     int id; //身份证
27
28     String  name;  //名字
29
30     //构造代码块...
31     {
32         //System.out.println("构造代码块的代码执行了......");
33
34     }
35
36     //带参构造函数
37     public  Baby(int i , String n){
38         id  = i;
39         name = n;
40     }
41
42     //无参构造方法
43     public Baby(){
44     }
45
46     public void cry(){
47         System.out.println(name+"哇哇哭...");
48     }
49 }
50
51
52
53 class Demo4
54 {
55     public static void main(String[] args)
56     {
57         Baby b1 = new Baby(110,"狗娃");  //  狗娃 狗剩 铁蛋
58         System.out.println("编号:"+ b1.id + " 名字:"+b1.name);
59         /*
60         System.out.println("编号:"+ b1.id + " 名字:"+b1.name);
61
62         new Baby(112,"狗剩");
63         new Baby();
64         */
65         /*
66         new Baby(110,"狗娃");
67         new Baby(112,"狗剩");
68         new Baby();
69         */
70     }
71 }
 1 /*
 2 构造 代码块要注意的事项:
 3     1. java编译器编译一个java源文件的时候,会把成员变量的声明语句提前至一个类的最前端。
 4     2. 成员变量的初始化工作其实都在在构造函数中执行的。
 5     3. 一旦经过java编译器编译后,那么构造代码块的代码块就会被移动构造函数中执行,是在构造函数之前执行的,构造函数的中代码是最后执行 的。
 6     4. 成员变量的显示初始化与构造代码块 的代码是按照当前代码的顺序执行的。
 7 */
 8 class Demo5
 9 {
10
11
12
13     //构造函数
14     public Demo5(){   //构造函数
15         i = 300000000;
16     }
17
18     //构造代码块   //构造代码块的初始化
19     {
20         i = 200000000;
21     }
22
23     int i = 100000000;     //成员变量的显初始化
24
25
26
27     public static void main(String[] args)
28     {
29         Demo5 d = new Demo5();
30         System.out.println("i = "+d.i); //    双、吴、刘 :2000   :
31     }
32 }
时间: 2024-11-08 22:26:31

java之路 构造代码块注意事项的相关文章

java中c#中statc 静态调用不同之处、c#的静态构造函数和java中的构造代码块、静态代码块

1.java和c#静态成员调用的不同之处 static 表示静态的,也就是共享资源,它是在类加载的时候就创建了 java中   可以通过实例来调用,也可以通过类名.成员名来调用,但是一般最好使用类名.成员这个方式,因为静态成员是属于类的,并不是属于具体的对象 c#中     只能通过类名.成员调用,并不能 用实例来进行调用 2.c#的静态构造函数和java中的构造代码块.静态代码块 c# 静态构造函数的特点:        1)静态构造函数不需要手动调用,系统自动调用        2)静态构造

Java中的构造代码块

代码块 ----a静态代码块 ----b构造代码块 ----c普通代码块 执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. a.静态代码块: 静态代码块在加载该类的时候执行,且只执行一次! 1 class Test{ 2 public static void main(String args[]) 3 { 4 Demo d1=new Demo();Demo d2=new Demo(); 5 6 } 7 } 8 9 class Demo{ 10 static{

浅析Java中的构造代码块、静态代码块与构造方法

构造代码块.静态代码块与构造方法是三种不同的代码块,那么他们到底有什么区别呢? 一.简单认识一下构造代码块.静态代码块与构造方法 class A { //构造代码块 { System.out.println("构造代码块A"); } //静态代码块 static { System.out.println("静态代码块A"); } //构造方法 public A() { System.out.println("构造方法A"); } } 二.弄清三者

Java构造器,构造代码块,静态代码块的执行顺序

构造器 与类同名且没有返回值,用来初始化类属性: 构造器又分为无参构造器和有参构造器 1.1:无参构造器 public class Contruction{ //...属性... public Contruction(){}//无参构造器,不写,系统会自动添加 } 1.2:有参构造器 public class Contruction { private int i; public Contruction( int i){ /*有参构造器,如果你定义了一个有参数的构造器, 那么你在实例化对象的时候

Java中普通代码块,构造代码块,静态代码块区别及代码示例

//普通代码块:在方法或语句中出现的{}就称为普通代码块.普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--"先出现先执行"public class CodeBlock01{ public static void main(String[] args){ { int x=3; System.out.println("1,普通代码块内的变量x="+x); } int x=1; System.out.println("主方法内的变量x="

Java 代码块,普通代码块,构造代码块,静态代码块

学习Java中… 刚刚学到了Java的代码块,虽然很简单 还是记下吧! 左音 2016-03-16 ----------------- // 执行优先级:静态代码块 > mian方法 > 构造代码块 > 构造方法 // 静态代码块不论是否实例化都会执行一次,不会重复执行 // 构造代码块实例化时执行 1.普通代码块 // 普通代码块在方法或语句中 1 public class CodeBlock { 2 3 public static void main (String[] args)

JAVA之旅(四)——面向对象思想,成员/局部变量,匿名对象,封装 , private,构造方法,构造代码块

JAVA之旅(四)--面向对象思想,成员/局部变量,匿名对象,封装 , private,构造方法,构造代码块 加油吧,节奏得快点了 1.概述 上篇幅也是讲了这点,这篇幅就着重的讲一下思想和案例 就拿买电脑来说吧,首先,你不懂电脑,你去电脑城买电脑,和大象装冰箱里一样,是什么步骤?咨询 砍价 ,谈妥了就那电脑走人,对吧,这就是面向过程的思想,而面向对象是:你有一个哥们,他懂电脑,什么都会,你只要带他去,就行,你这个哥们就是对象,在JAVA中,我们就是操作一个对象去完成各种各样的操作的,这就是面向对

Java静态代码块、构造代码块、构造方法的执行顺序

Java静态代码块.构造代码块.构造方法的执行顺序 静态代码优先于非静态的代码,是因为被static修饰的成员都是类成员,会随着JVM加载类的时候加载而执行,而没有被static修饰的成员也被称为实例成员,需要创建对象才会随之加载到堆内存.所以静态的会优先非静态的. 执行构造器(构造方法)的时候,在执行方法体之前存在隐式三步: 1,super语句,可能出现以下三种情况: 1)构造方法体的第一行是this语句,则不会执行隐式三步, 2)构造方法体的第一行是super语句,则调用相应的父类的构造方法

java学习中,匿名函数、构造方法、构造代码块、构造方法中调用构造方法(java 学习中的小记录)

java学习中,匿名函数.构造方法.构造代码块.构造方法中调用构造方法(java 学习中的小记录) 作者:王可利(Star·星星) 匿名函数 匿名对象:没有名字的对象 匿名对象使用的注意点: 1.一般不会用匿名对象给属性赋值,无法获取属性值,每次new 都是一个新的对象. 2.匿名对象永远都不可能是一个对象. 如:person new().name = "星星":是不行的 匿名对象的好处:书写简单. 匿名对象使用的场景: 1.如果一个对象调用一个方法一次的时候,就可以用匿名对象来调用.