1.子类对象初始化
对象的初始化通过调用构造方法来实现
子类对象的初始化既包括自身成员变量的初始化,也包括所继承的父类的成员变量的初始化
定义构造方法时,用this调用本类的其他构造方法,用super调用父类的构造方法
子类的构造方法中,默认会隐含父类的无参构造方法(即系统自动加入super)
2.子类和父类对象之间的转换
子类对象可以直接赋值给父类对象,而父类对象赋值给子类对象需要进行强制类型转换
3.子类不能直接访问父类中的私有成员,只能通过访问父类中的非私有成员方法来实现
4.变量覆盖:子类中定义了同名变量(可不同类型),若访问父类方法,则方法中调用的仍是隐藏掉的那个变量。
若需直接饮用父类中的变量,可用“super.变量”实现
5.方法覆盖:同变量覆盖。默认调用自身的方法,用super.方法 调用父类方法。以此实现"运行时多态(父类与子类对象转换+方法覆盖)"
方法覆盖-》运行时根据覆盖情况进行选择
方法重载(同名不同参)-》编译时进行
577

被折叠的 条评论
为什么被折叠?



