【10】 Java基础 <十> —— 用个人方法实现构造器的排序

  1. 设置实例变量的值为缺省的初始值
  2. 调用对象的构造器,绑定构造器参数
  3. 如果构造器中有this()调用,则根据this()调用的参数调用响应的重载构造器,然后转到步骤5,否则转到步骤4
  4. 除java.lang.Object类外,调用父类中的初始化块初始化父类的属性,然后调用父类构造器,如果在构造器中有super()调用,则根据super()中的参数调用父类中相应的构造器
  5. 使用初始化程序和初始化块初始化成员
  6. 执行构造器方法体中其他语句
 1 Person.java
 2 
 3 public class Person {
 4 
 5     
 6     Person(){
 7         System.out.println("Person空参构造器-----第四步");
 8     }
 9     
10     {
11         System.out.println("Person初始化 块------第三步");
12     }
13     static{
14         System.out.println("初始化器----------第一步");
15     }
16 }
 1 User.java
 2 
 3 public class User extends Person{
 4 
 5     String UserName;
 6     String Password;
 7     
 8     User(){
 9         super();
10         System.out.println("User空参构造器--------第六步");
11     }
12     
13     User(String UserName,String Password){
14         this();
15         this.UserName = UserName;
16         this.Password = Password;
17         System.out.println("User有参构造器---------第七步");
18     }
19     //初始化块
20     {
21         System.out.println("初始化块-----------第五步");
22     }
23     static{
24         System.out.println("初始化器---------第二步");
25     }    
26 }

测试一下自己写的构造器方法

1 Test.java
2 
3 public class Test {
4 
5     public static void main(String[] args) {
6         User user = new User("zhangsan","123456");
7     }
8 }

 

青春看起来如此完美, 没空闲去浪费时间。 <我们最后的话——刺猬>
原文地址:https://www.cnblogs.com/WangJing0506/p/8546367.html