黑马程序员技术交流社区
标题:
就业班
[打印本页]
作者:
皮皮兔
时间:
2019-6-20 15:47
标题:
就业班
1.继承的概念 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法 实现继承的格式 继承通过extends实现
格式:class 子类 extends 父类 { } 举例:class Dog extends Animal { }
继承带来的好处
继承可以让类与类之间产生关系,子父类关系,产生子父类后,子类则可以使用父类中非私有的成员。
在子类方法中访问一个变量,采用的是就近原则。
子类局部范围找 子类成员范围找 父类成员范围找如果都没有就报错(不考虑父亲的父亲…)
Java中继承的注意事项
Java中类只支持单继承,不支持多继承错误范例:class A extends B, C { } Java中类支持多层继承
2什么是多态
同一个对象,在不同时刻表现出来的不同形态
多态的前提 要有继承或实现关系 要有方法的重写 要有父类引用指向子类对象
成员访问特点
成员变量:编译看父类,运行看父类
成员方法:编译看父类,运行看子类
好处:提高程序的扩展性。定义方法时候,使用父类型作为参数,在使用的时候,使用具体的子类型参与操作
弊端:不能使用子类的特有成员
向上转型:父类引用指向子类对象就是向上转型
向下转型格式:子类型 对象名 = (子类型)父类引用;
抽象类和抽象方法必须使用 abstract 关键字修饰
抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
抽象类不能实例化
抽象类如何实例化呢?参照多态的方式,通过子类对象实例化,这叫抽象类多态
抽象类的子类
要么重写抽象类中的所有抽象方法
要么是抽象类
成员的特点
成员变量
既可以是变量,也可以是常量
构造方法:空参构造、有参构造
成员方法:抽象方法、 普通方法
接口用关键字interface修饰;类实现接口用implements表示
接口不能实例化
接口的子类
要么重写接口中的所有抽象方法;要么子类也是抽象类
成员特点
成员变量
只能是常量
默认修饰符:public static final
构造方法
没有,因为接口主要是扩展功能的,而没有具体存在
成员方法
只能是抽象方法
默认修饰符:public abstract
类与类的关系
继承关系,只能单继承,但是可以多层继承
类与接口的关系
实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现多个接口
接口与接口的关系
继承关系,可以单继承,也可以多继承
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2