java中的继承使用规则和注意事项
当定义新的类时,发现已经有类与其相似,就可以将新的类继承已经存在的类。
新定义的类就具备了已经存在类的所有非私有成员。而无需再重新定义。
子类可以覆盖(重写)父类的方法,让其方法更强大
子类可以在继承父类成员的基础上,再拥有只属于子类自己的成员
子类比父类更强大
Java只支持单继承,不支持多继承。即只能有一个父类。
父类可以继续有父类。
只有Object类没有父类。 里面有to String 方法
2、什么是方法的重写?什么是方法的重载?
当子类继承父类后,拥有了父类非私有的方法并可以直接调用。但是子类可以按照子类自身的逻辑重新定义继承过来的父类方法,该过程叫做方法重写
在同一个类中,出现方法名相同而参数列表不同,这样定义方法叫做方法重载。
这样的设计优化了程序设计
3、接口、抽象类、抽象方法的使用
Java中可以定义没有方法体的方法,该方法的具体实现由子类完成,该方法称为抽象方法,包含抽象方法的类就是抽象类。
抽象方法即只有功能声明,没有功能主体实现的方法。
抽象类无法直接创建对象,只能被子类继承后,创建子类对象。
子类定义时继承抽象类
抽象类是事物的描述,子类需要继承父类完成最终的功能实现细节(即重写方法,完成方法体)。
将一个抽象方法重写的过程也叫实现方法的过程。
子类定义后创建实例对象
在定义好子类后,可以直接创建对象。在所有使用子类的地方可以传入子类对象,
在所有使 用父类的地方也可以传入子类对象(接收的是父类类型,但是调用方法时传入的可以是子类类型),
因为属性与方法在子父类中都是相同的。
在使用父类型的地方,均可以给予其子类对象!!!!
在具体定义类时实现接口,必须重写(实现)所有抽象方法或者定义抽象类,可以留下若干抽象方法不实现。
Java支持一个类同时实现多个接口。
接口可以继承接口。
类可以在继承一个类的同时,实现多个接口。
接口与父类的功能可以重复,均代表要具备某种功能。
接口中的成员是固定的:
变量修饰符为:public static final(static与final明天讲解)
方法修饰符为:public abstract(所以重写接口方法时,必须使用public)
4、接口和抽象类的区别?
一、继承和实现 类只可以单继承。接口可以多实现
二、方法的问题 抽象类可以有非抽象方法、而接口中所有方法都是抽象的!
三、选型问题 接口是额外的功能。
|
|