1.接口

package com.yfs.javase;public interface IDemo1 {//interface  接口public /*abstract*/ void method1();//默认抽象方法 public}class Child1 implements IDemo1 {@Overridepublic void method1() {  // 实现接口的方法System.out.println("call method1()");}}

2.接口示例1

package com.yfs.javase;public interface IFly {public void fly();}

3.实现接口

package com.yfs.javase;public class Bird implements IFly {@Overridepublic void fly() {System.out.println("鸟在飞....");}}
class Wuya  extends Bird {@Overridepublic void fly() {System.out.println("乌鸦在飞....");}
}class Butterfly implements IFly {@Overridepublic void fly() {System.out.println("蝴蝶在飞....");}}

4.IRun接口

package com.yfs.javase;public interface IRun {int a = 10;//默认public static finalpublic void run();}
/*public*/ interface ISwim {}
class Horse implements IRun {@Overridepublic void run() {System.out.println("马在跑..." + a);}}

5.接口多继承

package com.yfs.javase;
//接口可以多继承
public interface ITest extends IFly, IRun, ISwim {}

6.Person

package com.yfs.javase;public class Person {private String name;private int age;private char sex;public Person() {}public Person(String name) {this.name = name;}public Person(String name, int age, char sex) {this.name = name;this.age = age;this.sex = sex;}public void introduce() {System.out.println("I am Person....");}public String toString() {return "姓名:" + name + "  年龄 :" + age + "  性别:" + sex;}public void speak() {System.out.println(name + " 工作了吗?");}public void sleep() {System.out.println(name + " 睡觉了吗?");}public void eat() {System.out.println(name + " 吃了吗?");}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 char getSex() {return sex;}public void setSex(char sex) {this.sex = sex;}}

7.超人 继承 人,实现 IRun,IFly 接口

package com.yfs.javase;public class SuperMan extends Person implements IRun, IFly {@Overridepublic void run() {System.out.println("超人在跑....");}@Overridepublic void fly() {System.out.println("超人在飞...");}}

8.接口 测试

package com.yfs.javase;public class Test1 {public static void main(String[] args) {IFly f1 = null;//     new IFly();//接口不能实例化f1 = new Bird();f1.fly();f1 = new Butterfly();f1.fly();callMethod(new Wuya());IRun r1 = new Horse();r1.run();callMethod(new SuperMan());}public static  void callMethod(IFly f) {f.fly();}}

9.测试2

package com.yfs.javase;public class Test2 {public static void main(String[] args) {SuperMan s1 = new SuperMan();s1.setName("Tom");s1.speak();s1.run();callMethod(new Horse());callMethod(s1);}public static void callMethod(IRun r) {r.run();}
}

转载于:https://www.cnblogs.com/feilongblog/p/4675867.html

java新手笔记21 接口相关推荐

  1. JAVA自学笔记21

    JAVA自学笔记21 1.转换流 由于字节流操作中文不是非常方便,因此java提供了转换流 字符流=字节流+编码表 1)编码表 由字符及其对应的数值组成的一张表 图解: 2)String类的编码和解码 ...

  2. java学习笔记21——JDBC

    文章目录 日报 11.11 JDBC 学习内容 JDBC JDBC 的核心 API DriverManager 类 Connection 接口 : Statement接口: PreparedState ...

  3. Java学习笔记21

    Objects是Java 7新增的一个工具类,它提供了一些工具方法来操作对象,这些工具方法大多是"空指针"安全的. Objects实现的方法如下: requireNonNull(T ...

  4. Java学习笔记——函数式接口

    一.函数式接口概述 函数式接口:有且仅有一个抽象方法的接口. Java中的函数式编程体现就是Lambda表达式,所以函数式接口就是可以适用于 Lambda表达式使用的接口.只有确保接口中有且仅有一个抽 ...

  5. Java学习笔记004——接口、克隆、回调、内部类

    接口 1.接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义 2.定义接口,如: public interface Abc{ int aaa(Object other) } 3 ...

  6. java新手笔记1 Hello World!

    //Hello.java文件 //类声明 public class Hello{//声明方法 main程序入口public static void main (String[] args) {Syst ...

  7. java新手笔记3 运算符循环

    1.包 2.运算符 public class Operator {public static void main(String[] args) {int a = 5;System.out.printl ...

  8. java新手笔记16 面积

    1.图形类 package com.yfs.javase;public class Shape {//计算面积方法public double getArea() {System.out.println ...

  9. Java 新手笔记(一)

    首先安装Java环境,编译器和解释器. 一 安装Java SE(Java标准平台) JDK主要内容如下: 二 系统环境配置 三 查看是否配置正确 一 安装Java SE(Java标准平台) 1.最新版 ...

最新文章

  1. Juniper的路由器、防火墙、交换机如何恢复出厂配置
  2. 一文详解 Kubernetes 中的服务发现,运维请收藏
  3. 封神召唤师显示服务器爆满,封神召唤师总是显示无法连接网络
  4. 比特币现金在奥地利成为主流
  5. 迎接5G普及风暴,还缺这把「万能钥匙」
  6. 【youcans 的 OpenCV 例程 200 篇】112. 滤波反投影重建图像
  7. 今晚直播丨全新MySQL OLAP实时分析解决方案HeatWave详解
  8. Python并行实例
  9. Android使用init.rc触发脚本实现隐藏内置应用
  10. 付款方对接银联入网仿真测试系统
  11. 韩国服务器性能排行榜,2019韩国云服务器排名
  12. linux 格式化磁盘失败,linux格式化磁盘出错
  13. 考研备考建议篇——论文怎么投稿
  14. 王飞跃教授点评:无人车最“靠谱”的应用领域——不是出行
  15. LTE中CQI反馈学习笔记
  16. 多个PDF怎么一起打印?教你两种打印方法
  17. Java开发技巧!整理了3家面试问题:美团+字节+腾讯,工作感悟
  18. sql求和出现null时赋值为0
  19. 猎鹰9号运载火箭介绍
  20. 中国成为论文发表数量第一的国家

热门文章

  1. 网站制作时应该如何更合理定位与策划
  2. 学习ASP.NET比较完整的流程
  3. JSTL fn:split()函数
  4. Android中的“再按一次返回键退出程序”实现
  5. C#二叉树遍历算法实现浅析
  6. 一个进程仅存在给定类型的一个挂起信号,同一进程同样类型的其他信号不被排队
  7. [置顶] 自己动手实现OpenGL之glViewPort(一)
  8. 算法------数组---------存在重复元素
  9. 第十五周项目一-程序填空(范型程序设计)
  10. 第四周项目二-太乐了