Java构造方法继承的一点理解

子类一定要继承父类的构造方法吗? 如果不继承光调用行不行?  为什么一个Java会给没有添加构造方法的类隐式地添加一个无参构造方法。 以下是我关于继承的一点理解:

1.Java中所有的类都是继承自Object(不要以为你写一个类没有写 extends Object 就以为你没有继承了,一定要有这个概念),Object类有个一个无参构造方法,所以我们在写一个类的时候如果没有添加构造方法,Java会默认帮我们添加上; 如果自己定义了构造方法,java则不再帮我们创建,如果此时你非得用无参构造方法怎么办?很简单:自己造一个。
    以下代码会有错误:
Java构造方法继承的一点理解_第1张图片
自己添加一个无参构造方法,就OK了,如下。
Java构造方法继承的一点理解_第2张图片

2、子类一定要调用父类的构造方法吗? 
      是的,只要是继承就必须要调用父类的构造方法,不然你怎么构造出父类?没有父类你又怎么构造你自己? 所以说也不一定说是继承吧,但起码要调用。 

3、注意以上我说的是“调用”父类的构造方法,也就是说不一定要创造一个跟父类一样参数的构造方法,
        看看这个例子:
        Java构造方法继承的一点理解_第3张图片

       这样是可以的,但 一般不这么干,因为没什么意义 ,通常是这样的:     
       Java构造方法继承的一点理解_第4张图片
 这样才能体现出继承的思想,对吧。

 OK,就讲到这里了,虽然很基础, 但我觉得对初学者理解继承还是很有必要,经常写Java的平时也不一定注意到了,正好我今天看到了就总结以下,希望对你有帮助。


你可能感兴趣的:(Java构造方法继承的一点理解)