1.定义:多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。 ------这多个类称为子类,单独这个类称为父类或者超类。 ------子类可以直接访问父类中非私有的成员变量与成员方法。 2.格式:通过extends 关键字让类与类之间产生继承关系 ----- class 子类名 extends父类名 {} 有了继承以后,我们定义一个类的时候,可以在一个已经存在的类的基础上,还可以定义自己的新成员。 3.继承的好处 A:提高了代码的复用性 -----多个类相同的成员可以放到同一个类中 B:提高了代码的维护性 -----如果功能的代码需要修改,修改一处即可 C:让类与类之间产生了关系,是多态的前提 -----其实这也是继承的一个弊端:类的耦合性很强 4.Java中继承的特点 A. java只支持单继承不支持多继承。 例:----正确的:class SubDemo extends Demo{} ----错误的:class SubDemo extends Demo1,Demo2 B. java支持多层继承。 例:class A{} class B extends A{} class C extends B{} C. 任何类都直接或者间接继承自Object类。 5. Java中继承的注意事项 A子类只能继承父类所有非私有的成员(成员方法和成员变量) 其实这也体现了继承的另一个弊端:打破了封装性 B子类不能继承父类的构造方法,但是可以通过super关键字去访问父类构造方法。 C不要为了部分功能而去继承,不要为了某个功能而去继承,需要满足”is a”的关系。
|