在Person类中定义了一个模板,在主方法中调用时,调用的就是普通方法,而子类只需要实现父类中的抽象方法,就可以得到一个具体信息。
Java代码
- abstract class Person
- {
- public
String name;
- public
int age;
- public
Person(String name,int age){
- this
.name = name;
- this
.age = age;
- }
- public
void say(){
- System.out.println(this
.getContent());
- }
- public
abstract String getContent();
- }
- class
Student extends Person
- {
- public
float score;
- public
Student(String name,int age,float score){
- super
(name,age);
- this
.score = score;
- }
- public
String getContent(){
- return
"学生信息: 姓名:"+this.name+" 年龄:"+
- this
.age+" 分数:"+this.score;
- }
- }
- class
Worker extends Person
- {
- public
float salary;
- public
Worker(String name,int age,float salary){
- super
(name,age);
- this
.salary = salary;
- }
- public
String getContent(){
- return
"工人信息: 姓名:"+this.name+" 年龄:"+
- this
.age+" 薪水:"+this.salary;
- }
- }
- public
class Demo4
- {
- public
static void main(String args[]){
- Person p1 = null
;
- Person p2 = null
;
- p1 = new
Student("张帆",20,99f);
- p2 = new
Worker("张正",32,4000f);
- p1.say();
- p2.say();
- }
- }