如何继承
继承
一、为什么需要继承?
一句话——不要浪费时间来做重复的事情。
二、如何继承?
重点:
1)继承关键字——类的继承extends ,接口的实现implements.
2)每个类(class)只能继承一个类(class),但可以实现多个接口(interface).
3)实现一个接口时,需要重写父接口中的所有方法.
实例:
package TextExtends;/** * 主程序类 * @author Sean 2012 - 8 */public class Master {/** * 主程序入口 * @param args */public static void main(String[] args) {/** * 创建三个学生信息 */Student student1 = new Student("000001", "张三", 18, 95.542);CollegeStudent student2 = new CollegeStudent("000002", "李四",19, 93.432);Student student3 = new CollegeStudent("000003","王五",17, 98.242);/** * 显示学生信息 */student1.print();student2.print();student3.print();/** * 访问大学生类中的方法 */student2.CET_4();}}
显示结果:
学号:000001 姓名:张三 年龄:18 分数:95.542
父类的方法被重写了!!!
父类的方法被重写了!!!
大学生要参加四、六级考试!!!
三、继承到了什么?
分析:
1、从上例中可以看到CollegeStudent类继承了Student类,即CollegeStudent定义的对象就拥有了Student类中的所有属性;并且在CollegeStudent类中加入一个自己的成员方法。
2、透过定义CollegeStudent对象过程中发现,允许父类定义子类,子类定义子类,父类定义父类,但就是不允许CollegeStudent student4 = new student("000003","王五",17,89.78);也就是说不允许用子类来定义父类。
3、当父类中的成员方法或变量的访问修复符为private时,在主类中定义的对象不能直接使用,即不能被继承。
4、要使用子类的方法,只能通过子类定义子类来实现;同样要调用父类中没有的方法,可以通过在子类中重新定义新方法。
5、当父类定义父类时,无法访问到子类中的成员变量和方法,只能通过父类定义子类,或子类定义子类的方式才能实现。
6、当父类定义子类,或子类定义子类时,子类中重写了父类的方法,则调用该方法时默认调用子类中重写后的方法。
7、父类中的构造方法是不能被继承的,子类要使用父类的构造方法只能通过super方法来实现。