首页 > 代码库 > java构造代码块,构造函数和普通函数的区别和调用时间

java构造代码块,构造函数和普通函数的区别和调用时间

在这里我们谈论一下构造代码块,构造函数和普通函数的区别和调用时间。
构造代码块:最早运行,比构造函数运行的时间好要提前,和构造函数一样,只在对象初始化的时候运行。
构造函数:运行时间比构造代码块时间晚,也是在对象初始化的时候运行。没有返回值,构造函数名称和类名一致。
普通函数:不能自动调用,需要对象来调用,例如a.add();
如果只看代码运行先后顺序的话:构造代码块>构造函数>普通函数
下面给一个程序

 1 public  class Test1 { 2  3     public static void main(String[] args) { 4         code n=new code(); 5         n.normal(); 6          7     } 8 } 9 class code{10     //构造代码块1:11     {12         System.out.println("我是构造代码块1");13     }14     //构造函数115     public code(){16         System.out.println("我是构造函数1");17     }18     //构造函数219     public code(int t){20         System.out.println("我是构造函数2"+t);21     }22     //普通函数23     public void normal(){24         System.out.println("我是普通函数");25     }26     //构造代码块2:27         {28             System.out.println("我是构造代码块2");29         }30 }

 

运行结果:

技术分享


通过上面的程序运行结果,我们可以看出,不管构造代码块是在构造函数之后还是在构造函数之前,都是先运行构造代码块
然后在运行构造函数。构造函数通过重载,有两种初始化方式,一种是没有参数的,一种是有参数的。
如果不调用普通函数,普通函数是不能执行的。

 

java构造代码块,构造函数和普通函数的区别和调用时间