南北方饮食文化的多态

南北方饮食文化的多态

要求:

1.        在一个名为Test.java的文件中定义四个类:人类Person,南方人类SouthPerson和北方人类NorthPerson继承Person,测试类Test,要求编写代码的同时编写简单注释。

2.        人类Person要求体现以下内容:

(1)     私有成员变量:姓名name,年龄age

(2)     成员方法:setXxx()/getXxx()方法

Show( )方法显示成员信息

eat()方法显示“吃饭了!”

3.   SouthPerson继承Person,重写eat()方法显示“南方人喜欢吃米饭!”,并给出成员方法DoBusiness()显示“南方人擅长做生意”。

4.   NorthPerson继承Person,重写eat()方法显示“北方人喜欢吃面条!”,并给出成员方法Research()显示“北方人擅长搞研究”。

5.        测试类Test要求实现:

(1)测试南方人:用多态创建Person对象p,用setXxx()方法给其赋值(”陈果”,40),调用其show()方法、eat()方法、DoBusiness()方法。

(2)测试北方人:用多态将北方人赋值给对象p,用setXxx()方法给其赋值(”李平”,16),调用其调用show()方法、eat()方法、Research()方法。

源代码:

 

 

 

package TestPerson;

 

//人类

class Person {

      private String name;

      private int age;

 

      public Person() {

           super();

           // TODO Auto-generated constructorstub

      }

 

      public Person(String name, int age) {

           super();

           this.name = name;

           this.age = age;

      }

 

      public String getName() {

           return name;

      }

 

      public void setName(String name) {

           this.name = name;

      }

 

      public int getAge() {

           return age;

      }

 

      public void setAge(int age) {

           this.age = age;

      }

 

      public void show() {

           System.out.println("姓名:" + name + ",年龄:" + age);

      }

 

      public void eat() {

           System.out.println("吃饭了");

      }

}

 

// 南方人

class SouthPersonextends Person {

 

      public void eat() {

           System.out.println("南方人喜欢吃米饭");

      }

 

      public void DoBusiness() {

           System.out.println("南方人擅长做生意");

      }

}

 

// 北方人

class NorthPersonextends Person {

      public void eat() {

           System.out.println("北方人喜欢吃面");

      }

 

      public void Research() {

           System.out.println("北方人喜欢搞研究");

      }

}

 

// 测试类

public class Test{

      // 测试南方人

      public static void main(String[] args) {

           Person p = new SouthPerson();

           p.setName("陈果");

           p.setAge(40);

           p.show();

           p.eat();

           SouthPerson s = (SouthPerson) p;

           s.DoBusiness();

           // 测试北方人

           p = new NorthPerson();

           p.setName("李平");

           p.setAge(16);

           p.show();

           p.eat();

           NorthPerson n = (NorthPerson) p;

           n.Research();

      }

 

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值