Java中的构造代码块
2018-01-24 14:17
162 查看
一.Java中的构造代码块
构造代码块的规则如下:1)在构造函数之前被调用
2)在新建对象时被调用
3)执行顺序按照构造代码块的书写顺序执行
代码如下:
package liu.shen.test; public class test{ test(){//构造函数 System.out.println("构造函数执行了"); } int a; void test(int b){ } void test2(){ } public static void main(String[] args) { //test t = new test(); System.out.println("hello"); } { System.out.println("构造代码块执行");} { System.out.println("构造代码块2"); } { System.out.println("构造代码块3"); } { System.out.println("构造代码块4"); } }
例如这里有一个test类, Java中类的加载顺序如下
1) 将 test.class 这个字节码文件,装载(ClassLoader)到内存中。
2) 将static 修饰的属性在静态区中分配内存空间,完成初始化,并执行static 代码块
3) 在堆内存中分配对象的内存空间:对成员属性 完成默认的初始化操作
4) 执行构造代码块
5) 执行构造函数
6) 对象创建完成将te这个引用执行堆内存中的地址
具体代码如下:
package liu.shen.test; public class test{ int studentNum;//学生人数 int heightScore,minScore;//最高分 最低分 static {System.out.println("static code is executed");};//static静态代码块 test(int studentNum ,int heightScore ,int minScore){ this.heightScore = heightScore; this.minScore = minScore; this.studentNum = studentNum; System.out.println("the constructor id executed"); } public static void main(String args[]) { test te = new test(99,100,29);//新建test()对象 System.out.println("this class have "+te.heightScore+" students"); } {System.out.println("this is attached informtion of this class!");}//构造代码块 }
二.Java中的构造函数
构造函数精析1)构造函数主要是用来初始化成员变量的—>构造函数用来传递参数
2)如果类中没有人为书写构造函数,则系统会调用默认的构造函数
3)构造函数可以重
4)构造函数也是函数,里面也可以写return; 不可以返回任何内容。
5)构造函数和类同名
6)构造函数不可以手动调用
7)构造函数在类的对象被创建时调用,而且只执行一次。
相关文章推荐
- Java中非静态代码块,静态代码块和构造方法的初始化顺序
- java静态代码块、初始化块和构造方法的执行顺序
- Java普通代码块,构造代码块,静态代码块区别,执行顺序
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- Java类中代码的执行顺序 静态代码块>构造代码块>构造方法
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序
- 深入浅析Java中普通代码块、构造代码块与静态代码块
- [编写高质量代码:改善java程序的151个建议]建议36,37:构造代码块
- JAVA 构造代码块
- Java中static成员变量、成员变量、static代码块、代码块、构造方法的执行顺序
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- Java 基础(5)—— 普通代码块、构造代码块、静态代码块
- [java起步]构造函数、构造代码快、静态代码块的执行顺序
- Java中普通代码块,构造代码块,静态代码块区别
- java中静态代码块和构造方法执行顺序
- 黑马程序员-----java中构造代码块
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- java中静态代码块、代码块、构造方法的加载顺序
- Java---类加载机制,构造方法,静态变量,(静态)代码块,父类,变量加载顺序