1.在第13章实做程序1基础上修改Worker类,对父类Person类的display()方法进行重写,除了显示工人姓名和年龄外,还显示工人的工资和级别。在Main类中定义Person类对象指向Worker类实例,并调用重写的display()方法。

输出结果:
姓名:张工
年龄:25
工资:8000
级别:中级
要求:
(1)必须有继承、重写和上转型
(2)类中的属性必须是私有属性

  1. class Person{
  2. private String name;
  3. private int age;
  4. // public Person(){
  5. // }
  6. public Person(String name,int age){
  7. this.name=name;
  8. this.age=age;
  9. }
  10. public void display(){
  11. System.out.println("姓名:"+name);
  12. System.out.println("年龄:"+age);
  13. }
  14. }
  15. class Worker extends Person{
  16. private int salary;
  17. private String level;
  18. public Worker(String name,int age,int salary,String level){
  19. super(name,age);
  20. this.salary=salary;
  21. this.level=level;
  22. }
  23. public void display(){
  24. super.display();
  25. System.out.println("工资:"+salary);
  26. System.out.println("级别:"+level);
  27. }
  28. }
  29. public class Main{
  30. public static void main(String [] args){
  31. Person zhang=new Worker("张工",25,8000,"中级");
  32. zhang.display();
  33. }
  34. }

2.定义一个电话类Phone,属性有电话号码code,类中包含必要的构造方法,一个普通方法display(),用于显示code属性值。以Phone类为父类,继承得到MobilePhone类,新增品牌brand和机主身份证号ownerId属性,子类中包含必要的构造方法,并对父类Phone类的display()方法进行重写,除了显示电话号码code外,还显示品牌brand和机主身份证号ownerId。在Main类中定义Phone类对象和MobilePhone类的对象,并分别调用display()方法。

输出结果:
电话号码:13700349999
—————
电话号码:15999999999
品牌:小米
机主号码:001
要求:
(1)必须有继承、重写
(2)类中的属性必须是私有属性
(3)电话号码和机主号码类型为String类型

  1. class Phone{
  2. private String code;
  3. public Phone(String code){
  4. this.code=code;
  5. }
  6. public void display(){
  7. System.out.println("电话号码:"+code);
  8. }
  9. }
  10. class MobilePhone extends Phone{
  11. private String brand;
  12. private String ownerId;
  13. public MobilePhone(String code,String brand,String ownerId){
  14. super(code);
  15. this.brand=brand;
  16. this.ownerId=ownerId;
  17. }
  18. public void display(){
  19. super.display();
  20. System.out.println("品牌:"+brand);
  21. System.out.println("机主号码:"+ownerId);
  22. }
  23. }
  24. public class Main{
  25. public static void main(String [] args){
  26. Phone p=new Phone("13700349999");
  27. p.display();
  28. System.out.println("----------");
  29. p=new MobilePhone("15999999999","小米","001");
  30. p.display();
  31. }
  32. }