java中定义一个教师类_Java oop9:老师类继承自人类或声明U盘类实现接口,使用多态数组打印其各自的方法,...

/*1.声明一个父类人类,子类老师类继承自人类,子类学生类继承自人类,使用多态数组打印其各自的方法

*/

package a;

public class Student {

public static void main(String[] args) {

person j = new xueSheng("张三");

person l = new xueSheng("李四");

person c = new laoShi("王五");

person[] ms = new person[3];

ms[0] = l;

ms[1] = j;

ms[2] = c;

for (int i = 0; i < ms.length; i++) {

if (ms[i] instanceof xueSheng) {

((xueSheng) ms[i]).zuoZuoYeY();}

else if (ms[i] instanceof laoShi) {

((laoShi) ms[i]).gouWuW();

}

}

}

}

class person {

public String name;/* 抽象类中这个可以不要 */

public person(String name/* 抽象类中这个可以不要 */) {

super();// 抽象类中这个可以不要

this.name = name;// 抽象类中这个可以不要

}

}

class xueShengextends person  {

// 调用父类的构造方 法

public xueSheng(String name) {

super(name);

// TODO Auto-generated constructor stub

}

public void zuoZuoYeY() {

// TODO Auto-generated method stub

System.out.println(this.name + "做作业");

}

}

class laoShi extends person {

public laoShi(String name) {

super(name);

// TODO Auto-generated constructor stub

}

public void gouWuW() {

// TODO Auto-generated method stub

System.out.println(this.name + "购物");

}

}

/*有时候代码没错也会暂时报错:*/8236418b3173b080203f9d63dfba0799.png

/*

2.声明一个存储数据的接口,声明U盘类实现接口,

声明硬盘类实现接口,声明MP3类实现接口,使用多态数组打印其各自的功能*/

package a;

public class Student {

public static void main(String[] args) {

renWu j/*父类*/=new UPan/*子类*/ ("U盘"/*赋值*/);

((UPan)/*转换*/j).gongNeng();

renWu c=new yingPan("硬盘");

((yingPan)c).gongNeng();

renWu m=new MP3("MP3");

((MP3)m).gongNeng();

}

}

interface chuCunShuJv{

void gongNeng();

}

abstract/*抽象*/class renWu/*父类*/{

public String name;/*设参数*/

public renWu(String name/*接收参数*/) {

super();/*extends继承时会用的super*/

this.name = name;/*声明这个类里的name 是接收到的name,有自己说得通的理解即可*/

}

}

class UPan/*子类*/extends/*继承*/ renWu/*父类*/implements/*接口*/ chuCunShuJv{

public UPan (String string) {

super(string);

}

@Override

public void gongNeng() {

System.out.println(this.name+"有拷贝的功能");/*里面有System.out.println的一般是public void gongNeng()这类的构造方法*/

}

}

class yingPan/*子类*/extends/*继承*/ renWu/*父类*/implements/*接口*/ chuCunShuJv{

public yingPan (String string) {

super(string);

}

@Override

public void gongNeng() {

System.out.println(this.name+"好玩");/*里面有System.out.println的一般是public void gongNeng()这类的构造方法*/

}

}

class MP3 extends renWu implements chuCunShuJv{

public MP3(String name) {

super(name);

}

@Override

public void gongNeng() {

System.out.println(this.name+"听歌");

}

}b48323694c59f45b81b1fb699d23476a.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值