Java~面向对象编程多态的理解、抽象类、接口

【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】

**开源地址:https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB **

public void setColor(String color) {

this.color = color;

}

public abstract void eat();

public abstract void sleep();

public Animal() {

}

public Animal(String name, String color) {

this.name = name;

this.color = color;

}

}

interface IRunning {

void run();

}

interface Iwalking {

void walk();

}

interface ISwimming {

void swim();

}

interface IFlying {

void fly();

}

class fish extends Animal implements ISwimming {

public void eat() {

System.out.println(“fish eat little fish”);

}

public void sleep() {

System.out.println(“fish sleep in walter”);

}

public void swim() {

System.out.println(“fish can swim”);

}

public fish(String name, String color) {

super(name, color);

}

}

class Forg extends Animal implements Iwalking, IRunning, ISwimming {

@Override

public void eat() {

System.out.println(“forg eat small animals”);

}

@Override

public void sleep() {

System.out.println(“forg sleep on leaf”);

}

@Override

public void run() {

System.out.println(“forg can run”);

}

@Override

public void swim() {

System.out.println(“forg can swim”);

}

@Override

public void walk() {

System.out.println(“forg can walk”);

}

public Forg(String name, String color) {

super(name, color);

}

}

class Duck extends Animal implements ISwimming, IRunning, Iwalking, IFlying {

private String kind;

public String getKind() {

return kind;

}

public void setKind(String kind) {

this.kind = kind;

}

@Override

public void eat() {

System.out.println(“duck eat seed”);

}

@Override

public void sleep() {

System.out.println(“duck sleep on land”);

}

@Override

public void fly() {

System.out.println(“duck can fly”);

}

@Override

public void run() {

System.out.println(“duck can run”);

}

@Override

public void swim() {

System.out.println(“duck can swim”);

}

@Override

public void walk() {

System.out.println(“duck can walk”);

}

public Duck(String name, String color) {

super(name, color);

}

}

public class Test {

public static void swim(ISwimming iSwimming) {

iSwimming.swim();

}

public static void run(IRunning iRunning) {

iRunning.run();

}

public static void fly(IFlying iFlying) {

iFlying.fly();

}

public static void walk(Iwalking iwalking) {

iwalking.walk();

}

public static void main(String[] args) {

ISwimming forg = new Forg(“wawa”, “black”);

ISwimming duck = new Duck(“dudu”, “write”);

forg.swim();

duck.swim();

System.out.println(“======================”);

Forg forg1 = new Forg(“YY”, “red”);

fish fish = new fish(“XX”, “black”);

Duck duck2 = new Duck(“LLL”, “yellow”);

swim(forg1);

swim(fish);

swim(duck2);

run(duck2);

walk(forg1);

fly(duck2);

System.out.println(“==============”);

Animal animal = new fish(“anan”, “red”);

Animal animal1 = new Duck(“aaa”, “ccc”);

animal.eat();

animal1.eat();

System.out.println(animal.getColor());

Duck duck1 = new Duck(“ccc”, " sss");

duck1.setKind(“write sky duck”);

System.out.println(duck1.getKind());

}

}

运行结果:

forg can swim

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值