编写一个Person抽象类,要求含有姓名(name)年龄(age)两个私有属性以及吃饭(eat) 和睡觉(sleep)两个抽象方法,并写出带参构造方法,创建学生(student)和工人(worker) 两个类,继承Person类。学生类多出了私有属性学号和学习方法(输出我爱学习),工人类多出了私有属性工号和工作方法(输出我爱工作),在主函数中创建学生和工人类 的实例对象,使用构造方法赋值,并输出所有属性和方法。
public abstract class Person {
private String name;
private int age;
public abstract void eat();
public abstract void sleep();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Student extends Person{
private int snum;
public void study(){
System.out.println("我爱学习");
}
@Override
public void eat() {
System.out.println(this.getName()+"吃饭");
}
@Override
public void sleep() {
System.out.println(this.getName()+"睡觉");
}
}
public class Worker extends Person{
private int wnum;
public void work(){
System.out.println("我爱工作");
}
@Override
public void eat() {
System.out.println(this.getName()+"吃饭");
}
@Override
public void sleep() {
System.out.println(this.getName()+"睡觉");
}
}
public class Test2 {
public static void main(String[] args) {
Student student = new Student();
student.setName("s");
student.setAge(21);
System.out.println(student.getName());
System.out.println(student.getAge());
student.eat();
student.sleep();
student.sleep();
Worker worker = new Worker();
worker.setName("w");
worker.setAge(24);
System.out.println(worker.getName());
System.out.println(worker.getAge());
worker.eat();
worker.sleep();
worker.work();
}
}