您的位置 首页 java

java之类的初始化过程

  1. public class Hello{
  2. static {
  3. System.out.println(“静态块”);
  4. }
  5. {
  6. System.out.println(“实例块”);
  7. }
  8. public Hello(){
  9. System.out.println(” 构造方法 “);
  10. }
  11. public static void main(String []args){
  12. }
  13. }

运行后是这样的:

静态块

在main方法里面 实例化 一下,即代码是这样的:

  1. public class Hello{
  2. static {
  3. System.out.println(“静态块”);
  4. }
  5. {
  6. System.out.println(“实例块”);
  7. }
  8. public Hello(){
  9. System.out.println(“构造方法”);
  10. }
  11. public static void main(String []args){
  12. Hello hello = new Hello();
  13. }
  14. }

运行后是这样的:

静态块

实例块

构造方法

通过上面的这两个例子可以看出来,当一个类加载的时候,调用静态块,当实例化一个对象的时候,实例块和构造方法被调用。

然后下面我这样写了写:

先写了一个父类:

  1. public class Personal{
  2. static{
  3. System.out.println(“父类的static块”);
  4. }
  5. {
  6. System.out.println(“父类的实例块..”);
  7. }
  8. public Personal(){
  9. System.out.println(“父类的构造方法..”);
  10. }
  11. }

然后写了一个子类:

  1. public class Child extends Personal{
  2. static{
  3. System.out.println(“子类的static块”);
  4. }
  5. public Child(){
  6. System.out.println(“子类的构造方法。”);
  7. }
  8. {
  9. System.out.println(“子类实例块..”);
  10. }
  11. }

在另外的一个类里面测试:

  1. public class Test{
  2. public static void main(String []args){
  3. Child child = new Child();
  4. }
  5. }

运行后得到的结果是:

父类的static块

子类的static块

父类的实例块..

父类的构造方法..

子类实例块..

子类的构造方法..

由此可以得到的结论是:

类的初始化过程是:

1.父类静态块

2.子类静态块

3.父类实例块

4.父类 构造器

5.子类实例块

6.子类构造器

西安尚学堂

Java 零基础就业班

上课地址:陕西省西安市高新区科技二路西安软件园天泽大厦五楼

咨询电话:029-62258374 QQ 2145598324

招生对象:

1. 零计算机编程基础学

2. 对行业不满意人士

3. 跨专业编程爱好者

4. 在校大学生实训

Java零基础班,10年 Java 以上开发经验技术讲师、架构师、行业大牛,亲自纯面授课程,手把手教你写编程。

10月新班免费试听课程已就绪,7天免费听课,体验Java乐趣。

文章来源:智云一二三科技

文章标题:java之类的初始化过程

文章地址:https://www.zhihuclub.com/195775.shtml

关于作者: 智云科技

热门文章

网站地图