关于类的继承问题

首先得看下面的程序理解类的继承的问题

 

package com.chen.javase;

 

public class Test4 {

    public static void main(String[] args)

    {

       new A();

       System.out.println("****************");

       new A(1);

       System.out.println("****************");

       new B();

    }

 

}

class A extends B

{

    public A()

    {

       super(1);

       System.out.print("A()  ");

    }

    public A(int a)

    {

       System.out.print("A(inta)  ");

    }

   

}

class B

{

    public B()

    {

       System.out.print("B()  ");

    }

    public B(int a)

    {

       System.out.print("B(inta)   ");

    }

}

 

 

在一个类中可以有多个类,但是只能有一个公共的类,其他的都是内部类。当我们new一个类的时候,首先他会去new自己父类的构造方法,这个构造方法使无参的,这个相当于在子类的构造方法执行之前会进行这样的一个语句super(),这个是默认的执行。如果在子类的构造方

法中有super调用父类的构造方法,这时候new父类的构造方法时将由super决定,super调用哪个,就运行哪个构造方法。

请看下面是上面程序的执行结果

B(int a)   A() ****************

B()  A(int a) ****************

B()  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值