IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 继承,接口的简单具体实现(代码展示) -> 正文阅读

[Java知识库]继承,接口的简单具体实现(代码展示)

package demo3;

import java.awt.*;

class Animal{
    public String name;
    //构造方法
    public Animal(String name){
        this.name = name;
    }
    //每个动物都会吃东西
    public void eat(){
        System.out.println(this.name + "正在吃饭");
    }

}
//但不是每个动物都会飞 会跑 会游泳 所以未来为实现这些方法 我们可以用接口来继承
interface IFlying{
    //抽象方法 默认public abstract
    void fly();
}

interface IRunning{
    void run();
}

interface ISwimming{
    void swim();
}

class Cat extends Animal implements IRunning{
    //如果父类有构造方法就应该先实现父类的构造方法
    public Cat(String name) {
        super(name);
    }
    //接着重写run的抽象方法
    @Override
    public void run() {
        System.out.println(this.name + "is cat 正在跑");
    }
}

class Dog extends Animal implements IRunning, ISwimming{
    public Dog(String name) {
        super(name);
    }

    @Override
    public void run() {
        System.out.println(this.name + "is dog正在跑");
    }

    @Override
    public void swim() {
        System.out.println(this.name + "正在游泳");
    }
}

class Robot implements IRunning{
    @Override
    public void run() {
        System.out.println("机器人正在跑");
    }
}

class Duck extends Animal implements IRunning, ISwimming, IFlying{
    public Duck(String name) {
        super(name);
    }

    @Override
    public void fly() {
        System.out.println(this.name + "fly");
    }

    @Override
    public void run() {
        System.out.println(this.name + "run");
    }

    @Override
    public void swim() {
        System.out.println(this.name + "swim");
    }
}

public class Test2 {
    public static void walk(IRunning iRunning){
        iRunning.run();
    }
    public static void swim(ISwimming iSwimming){
        iSwimming.swim();
    }
    public static void fly(IFlying iFlying){
        iFlying.fly();
    }

    public static void main(String[] args) {
        Duck duck = new Duck("tanglaoya");
        swim(duck);
        fly(duck);
        walk(duck);
    }

    public static void main2(String[] args) {
        Dog dog = new Dog("哈哈");
        walk(dog);
        walk(new Dog("mimi2"));
        walk(new Cat("mimi1"));
        walk(new Robot());
    }

    public static void main1(String[] args) {
        Animal animal = new Cat("mimi");
        Animal animal1 = new Dog("mimi2");

        IRunning iRunning = new Dog("mimi2");
        ISwimming iSwimming = new Dog("mimi2");

        IRunning iRunning1 = new Cat("mimi");
    }
}

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-04-28 11:39:48  更:2022-04-28 11:40:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:07:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码