JAVA继承中的构造方法

继承中的构造方法:

    //A 继承于 B
    //1.在new一个A之前,需要先构造一个B
    //2.在A的构造方法内中使用"super()"关键字先对B进行构造(需要将super关键字放在构造方法的第一行,因为只有先构造出了B之后才能进行下一步的A的构造)
    //3.在A构造方法中没有写super关键字的时候,编译器会自动调用父类无参的构造方法(无论父类无参构造方法有没有重写)
    //4.super()根据传入参数对应父类不同构造方法
    //5.super()在多层子类中只是构造向上一层类中的构造方法。

    例如:
    public class CLAS1
{

    public static void main(String[] args) 
    {
        C dx = new C();//调用C类
    }

}

class A //父类
{    
    int a;
        public A ()//无参构造
            {
                System.out.println("这是A的构造方法1");
            }
    
    
        public A (int SZ)//传参构造
            {
                System.out.println("这是A的构造方法2");    
            }
    
}



class B extends A//B继承于A,是A的子类
{    
    int b;
        public B ()//无参构造
            {
            super();//运行A类无参构造方法
            }
    
        public B (int SZ2)//传参构造
            {
            super(22);//运行A类传参构造方法
            }
        
}

class C extends B//C继承于B,是B的子类
{
    int c;
        public C()//C类构造方法
            {
            super(3);//运行B类构造方法,根据传入参数不同选择不同构造方法
            }

}

猜你喜欢

转载自www.cnblogs.com/dongwei-home/p/9501279.html