package Demo;
class Grandparent
{
public Grandparent()
{System.out.println("GrandParent Created.");}
public Grandparent(String string)
{System.out.println("GrandParent Created.String:" + string);}
}
class Parent extends Grandparent
{
public Parent()
{
//super("Hello.Grandparent.");
System.out.println("Parent Created");
// super("Hello.Grandparent.");
}
}
class Child extends Parent
{
public Child()
{System.out.println("Child Created");}
}
public class TestInherits
{
public static void main(String args[])
{Child c = new Child();}
}
结论:通过 super 调用基类构造方法,必须是子类构造方法中的第一个语句
一个类在继承一个类之后,是必须要初始化这个父类的,不然子类继承父类的那些参数,无法初始化。所以在子类继承父类后,必须调用父类里面的构造方法。
构造函数的主要作用:1给创建的对象建立一个标识符;2为对象数据成员开辟内存空间;3完成对象数据成员的初始化。
Fruit类覆盖了Object类的toString方法。
在“+”运算中,当任何一个对象与一个String对象,连接时,会隐式地调用其toString()方法,默认情况下,此方法返回“类名 @ + hashCode”。为了返回有意义的信息,子类可以重写toString()方法。
标签:继承,子类,System,Child,Grandparent,public,out From: https://www.cnblogs.com/mendianyu/p/16794779.html