用Java定义一个抽象类Person,有成员变量姓名name抽象方法 Disp()用于显示各种描述的信息。由Person派生出学生类Student和教授类Professor,Student类新增成员变量学号sno,Disp()方法输出学生的姓名和学号,Professor类新增成员变量工资salary Disp()方法输出教授的姓名和工资。在主类的main()中通过抽象类Person的上转型对象调用Disp()来分别输出学生和教授的信息。
支持一下,加油加油
纯语法的东西要什么思路。
抽象类Person:
有成员变量姓名name:
抽象方法 Disp():
....
全是按要求根据语法写的东西
最后一步
在主类的main()中通过抽象类Person的上转型对象调用Disp()来分别输出学生和教授的信息。
这里只需要分别实例化学生类和教授类,调用Disp() 方法即可,不存在什么强转都是Person类的子类。
ps:方法名规范是小驼峰
package test2;
import java.math.BigDecimal;
public class AbstractTest {
}
abstract class Person {
public String name;
public abstract void Disp();
public static void main(String[] args) {
Person student = new Student(1L,"小明");
student.Disp();
Person professor = new Professor(new BigDecimal(10000),"韦东奕副教授");
professor.Disp();
}
}
class Student extends Person{
private Long sno;
public Student(Long sno,String name) {
this.sno = sno;
this.name = name;
}
@Override
public void Disp() {
System.out.println("学生信息:姓名:" + this.name + ",学号:" + this.sno);
}
}
class Professor extends Person{
private BigDecimal salary;
public Professor(BigDecimal salary,String name) {
this.salary = salary;
this.name = name;
}
@Override
public void Disp() {
System.out.println("教授信息:姓名:" + this.name + ",工资:" + this.salary);
}
}