1.代码示例:
abstract class Person {
// age和name是所有人共有的属性
private int age;
private String name;
public Person(int age, String name) {
this.age = age;
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// 每个群体所想要的都不一样,可以声明为抽象方法
public abstract void want();
}
class Student extends Person {
// 由于父类含有构造方法,所以子类也需要自己的构造方法
public Student(int age, String name, int score) {
super(age, name);
this.score = score;
}
private int score;
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public void want() {
System.out.println("姓名:" + getName() + "年龄:" + getAge() + "成绩:"
+ getScore());
}
}
class Worker extends Person {
private int money;
public int getMoney() {
return money;
}
public void setMoney(int money) {
this.money = money;
}
public Worker(int age, String name, int money) {
super(age, name);
this.money = money;
}
public void want() {
System.out.println("姓名:" + getName() + "年龄:" + getAge() + "工资:"
+ getMoney());
}
}
public class AbsDemo01 {
public static void main(String[] args) {
Student s = new Student(10, "小明", 98);
s.want();
Worker w = new Worker(35, "大明", 5000);
w.want();
}
}
运行结果: