本方法中仅toString方法与老韩不同(先写后悟

package com.javase.project.text02; import java.lang.reflect.Array; import java.sql.SQLOutput; import java.util.Arrays; /** * Copyright (C), 2018-2021, Mr.Lin * Author: Mr.Lin * Date: 2021/11/12 9:37 * FileName: Message * Description: */ public class Message { public static void main(String[] args) { Person persons[] = new Person[4]; persons[0] = new Student("小明", 15, '男', "足球", "00023102"); persons[1] = new Student("小张", 19, '女', "跳舞", "00023203"); persons[2] = new Teacher("张飞", 30, '男', "象棋", 5); persons[3] = new Teacher("六小三", 32, '女', "麻将", 7); System.out.println(persons[0]); System.out.println("++++++++++++++++++++++++++++++++"); System.out.println(persons[1]); System.out.println("++++++++++++++++++++++++++++++++"); System.out.println(persons[2]); System.out.println("++++++++++++++++++++++++++++++++"); System.out.println(persons[3]); System.out.println("++++++++++++++++++++++++++++++++"); System.out.println("按年龄由高到低:"); Message message = new Message(); message.bubbleSort(persons); for (int i = 0; i < persons.length; i++) { System.out.println(persons[i].getName()); } System.out.println("++++++++++++++++++++++++++++++++"); for (int i = 0; i < persons.length; i++) { message.text(persons[i]); } } public void bubbleSort(Person[] persons) { Person temp = null; for (int i = 0; i < persons.length - 1; i++) { for (int j = 0; j < persons.length - 1 - i; j++) { if (persons[j].getAge() < persons[j + 1].getAge()) { temp = persons[j + 1]; persons[j + 1] = persons[j]; persons[j] = temp; } } } } public void text(Person p){ if(p instanceof Student){ System.out.println(((Student) p).study()); }else if (p instanceof Teacher) { System.out.println(((Teacher) p).teach()); }else { System.out.println("do_nothing"); } } }

package com.javase.project.text02; /** * Copyright (C), 2018-2021, Mr.Lin * Author: Mr.Lin * Date: 2021/11/12 9:17 * FileName: Person * Description: */ public class Person { private String name; private Integer age; private char sex; private String event; public Person() { } public Person(String name, Integer age, char sex, String event) { this.name = name; this.age = age; this.sex = sex; this.event = event; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public char getSex() { return sex; } public void setSex(char sex) { this.sex = sex; } public String getEvent() { return event; } public void setEvent(String event) { this.event = event; } public String play() { return name + "爱玩" + event; } @Override public String toString() { return "姓名:" + name + '\n' + "年龄:" + age + '\n' + "性别:" + sex ; } }

package com.javase.project.text02; /** * Copyright (C), 2018-2021, Mr.Lin * Author: Mr.Lin * Date: 2021/11/12 9:12 * FileName: Student * Description: 学生类 */ public class Student extends Person{ private String stu_id; public Student(String name, Integer age, char sex, String event, String stu_id) { super(name, age, sex, event); this.stu_id = stu_id; } public String getStu_id() { return stu_id; } public void setStu_id(String stu_id) { this.stu_id = stu_id; } public String play() { return getName() + "爱玩" + getEvent(); } @Override public String toString() { return "学生信息:\n"+super.toString() + "\n学号:" + stu_id+"\n"+study()+"\n"+play()+"."; } public String study(){ return "我承诺我会好好学习"; } }

package com.javase.project.text02; /** * Copyright (C), 2018-2021, Mr.Lin * Author: Mr.Lin * Date: 2021/11/12 9:16 * FileName: Teacher * Description: 老师类 */ public class Teacher extends Person{ public Integer work_age; public Teacher(String name, Integer age, char sex, String event, Integer work_age) { super(name, age, sex, event); this.work_age = work_age; } public Integer getWork_age() { return work_age; } public void setWork_age(Integer work_age) { this.work_age = work_age; } public String play() { return getName() + "爱玩" + getEvent(); } @Override public String toString() { return "老师信息:\n"+super.toString() + "\n工龄:" + work_age+"\n"+teach()+"\n"+play()+"."; } public String teach() { return "我承诺,我会认真教书"; } }
);