java中的显示初始化和特定初始化

简介:

public class Test{
   public static void main(String[] args){
       Child child = new Child();
   }
}
 
class Parent{
    public Parent(){
       super();
       show();//this.show(); 因为是Child类对象调用了super()来构造其父类的部分;所以父类中的this(随着其构造方法入栈的)是指向Child类对象的!所以调用的就是Child类对象的show方法!
       return ;
    }
     
    public void show(){
        System.out.println("parent run!");
    }
}
 
class  Child extends Parent{
   int num = 8;//显示初始化
   public Child(){
       super();
       //--> 这一块是分水岭,咋回事呢? super();执行完毕也就是父类初始化完毕,才会对子类进行显示初始化
       // 也就是 num=8这句显示初始化加载了构造函数紧挨着super();语句之后; 然后是子类中的数据的特定初始化!
       System.out.println("num = " + num);
       num = 10;//特定初始化
       System.out.println("num = " + num);
   }
    
   public void show(){
      System.out.println("child run && num = " + num);
   }
}

目录
相关文章
|
25天前
|
Java 编译器
java“变量 x 可能未被初始化”解决
在Java中,如果编译器检测到变量可能在使用前未被初始化,会报“变量 x 可能未被初始化”的错误。解决方法包括:1. 在声明变量时直接初始化;2. 确保所有可能的执行路径都能对变量进行初始化。
|
8天前
|
Java
Java 静态变量的初始化顺序
【10月更文挑战第15天】了解 Java 静态变量的初始化顺序对于正确编写和维护代码至关重要。通过深入理解初始化顺序的原理和细节,我们可以更好地避免潜在的问题,并提高代码的质量和可靠性。
|
27天前
|
Java 编译器
【一步一步了解Java系列】:子类继承以及代码块的初始化
【一步一步了解Java系列】:子类继承以及代码块的初始化
20 3
|
1月前
|
Java
java构造方法时对象初始化,实例化,参数赋值
java构造方法时对象初始化,实例化,参数赋值
42 1
|
3月前
|
安全 Java 关系型数据库
Java连接Mysql SSL初始化失败
Java连接Mysql SSL初始化失败
|
3月前
|
存储 Java
如何在 Java 中初始化二维 ArrayList
【8月更文挑战第23天】
84 1
|
3月前
|
存储 JavaScript Java
Java中未被初始化的字符串打印出“null”?
在Java中,未初始化的`String`变量默认值为`null`。打印此类变量时输出“null”,是因为`PrintStream`类中的`print`方法特别处理了`null`值,将其转换为字符串“null”。从JDK 17开始,`println`方法通过`String.valueOf`间接实现相同功能。当拼接包含`null`的字符串时,如`s1 + "BLACK"`,结果为“nullBLACK”,这是因为字符串构建过程中`StringBuilder`的`append`方法将`null`转换为“null”。
|
3月前
|
存储 Java 编译器
如何在 Java 中初始化对象 Arraylist?
【8月更文挑战第23天】
92 0
|
3月前
|
Java Spring
Java SpringBoot Bean InitializingBean 项目初始化
Java SpringBoot Bean InitializingBean 项目初始化
53 0
|
3月前
|
Java
Java中 字符串,字符串数组,整型数组初始化
Java中 字符串,字符串数组,整型数组初始化
13 0