本文主要是介绍面向对象:找人代劳的Java语言(10)——继承,重写,抽象类,抽象方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
继承
使用继承可以很好的解决代码冗余,将重复的代码抽取到父类中;
使用继承
- 编写父类
class Pet { //公共的属性和方法
}
- 编写子类继承父类
class Dog extends Pet { //子类特有的属性和方法
}
class Penguin extends Pet { //子类特有的属性和方法
}
- 子类访问父类成员
使用super关键字,super代表父类对象
//访问父类构造
super();
super(name);
//访问父类属性
super.name;
//访问父类方法
super.print();
继承注意点
子类不能被继承的父类成员:
1.private成员 2.子类预付类不同包,使用默认访问权限的成员 3.构造方法
访问修饰符
总结:
多重继承关系初始化顺序
父类属性>父类构造方法>子类属性>子类构造方法
总结:
符合is-a关系的设计使用继承;继承是代码重用的一种方式,将子类共有属性和行为放到父类中。
重写
调用父类方法,不能显示特有信息;因此需使用重写;构造方法不能被继承,因此不能重写。
重写条件:
- 方法名相同;
- 参数列表相同;
- 返回值类型相同或是其子类;
- 访问权限不能严于父类。
方法重载与方法重写的区别
抽象类,抽象方法
Java中可使用abstract定义抽象类,限制实例化;抽象类不可实例化。
public abstract class Pet { }
abstract也可用于方法——抽象方法
- 抽象方法没有方法体;
- 抽象方法必须在抽象类里;
- 抽象方法必须在子类中被实现,除非子类是抽象类;
public abstract void print();
flnal类
被final定义的类,方法均为最终版本的类和方法,用final定义的属性值是常量。
这篇关于面向对象:找人代劳的Java语言(10)——继承,重写,抽象类,抽象方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!