package com.sr.mll;
abstract class Person02 {
private String name;
private int age;
public Person02 () {
}
public Person02 (String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
abstract public void workOn (); //抽象方法
}
class Student03 extends Person02 {
private String classroom;
public Student03 () {
}
public Student03 (String name, int age, String classroom) {
super(name,age); //调用父类构造方法
this.classroom = classroom;
}
public String getClassroom() {
return classroom;
}
@Override
public void workOn() { //覆写父类的方法workOn()
System.out.println("姓名:" + this.getName() + "\t年龄:" + this.getAge() + "\t\t班级:" + this.classroom);
System.out.println("正在学习");
}
}
class Teacher01 extends Person02 {
private String office;
public Teacher01 () {
}
public Teacher01 (String name, int age, String office) {
super(name,age);
this.office = office;
}
public String getOffice() {
return office;
}
@Override
public void workOn() {
System.out.println("姓名:" + this.getName() + "\t年龄:" + this.getAge() + "\t\t办公室:" + this.office);
System.out.println("教授语文知识");
}
}
public class Zh04 {
public static void main(String[] args) {
//Person02 per = new Person02(); //抽象类本身不能直接通过构造方法创建对象,编译错误
Student03 stu = new Student03("刘备",18,"C111");
Teacher01 wk = new Teacher01("悟空",36,"B201");
stu.workOn();
wk.workOn();
}
}
以上是自己写的一段代码,记录学习情况,如有不对,请多见谅。