当多个类中出现了同样功能但功能主体不同 ,这时能够进行向上抽取。这时。仅仅抽取功能定义,而不抽取功能主体;
抽象:看不懂。
抽象类特点:
1:抽象方法一定在抽象类中。
2:抽象方法和抽象类必须被abstractkeyword修饰
3:抽象类不能够用new创建对象,由于抽象方法没意义
4:抽象类中的方法要被覆盖。必须有子类函数复写全部的抽象方法后,建立子类的对象调用;
假设子类仅仅覆盖了部分抽象方法。那么该子类还是一个抽象类。
抽象类和一般类没有什么太大不同
该怎么描写叙述就怎么描写叙述
假如我们在开发一个系统是须要对员工进行建模,员工包括3个属性;
姓名、工号以及工资。经理也是员工,除了含有员工的属性外。另一个奖金属性,请使用继承的思想设计员工类和经理类。
要求类中提供必要的方法进行属性訪问;
员工类:name id pay
经理类:继承了员工,并有自己特有的bonus.
abstract class Employee { private String name; private String id; private double pay; Employee (String name,String id,double pay) { this.name=name; this.id =id; this.pay=pay; } public abstract void work(); } class Manager extends Employee { private int bonus; Manager(String name,String id,double pay,int bonus) { super(name,id,pay); this.bonus=bonus; } public void work() { System.out.println("manager work"); } } class pro extends Employee//普通员工 { pro(String name,String id,double pay) { super(name,id,pay); } public void work() { System.out.println("pro work"); } } class AbstractDemo { public static void main(String[] args) { new Manager("lisi","909",923.7,234).work(); new pro("lisi","909",923.7).work(); } }