1 package com.bytezreo.interfacetest;
2
3 /**
4 *
5 * @Description interface 接口的使用 implements 实现----
6 * @author Bytezero·zhenglei! Email:420498246@qq.com
7 * @version
8 * @date 下午4:14:17
9 * @ 1.接口的使用interface来定义
10 * 2.在Java 中,接口和类时并列的两个结构
11 * 3.如何定义接口:定义接口中的成员
12 *
13 * 3.1 JDK7以及以前:只能定义全局常量和抽象方法
14 * >全局常量:public static final的,但是书写时,可以省略
15 * >抽象方法:public abstract
16 *
17 * 3.2 JDK8:除了定义全局常量和抽象方法之外,还可以定义静态方法和默认方法
18 *
19 * 4.接口中不能定义构造器! 意味着 接口不可以实例化
20 *
21 * 5.java 开发中,接口通过让类去实现(implements)的方式来使用
22 * 如果实现类 覆盖了接口中的所有抽象方法,则此实现类就可以实例化
23 * 如果实现类 没有覆盖接口中所有的抽象方法,则此实现类仍为抽像类
24 *
25 *
26 * 6.Java 类可以实现多个接口 ---->弥补了 Java 单继承性的局限性
27 * 格式: class AA extends BB implements CC,DD,EE
28 *
29 * 7.接口与接口之间可以继承, 可以多继承
30 *
31 * ********************************************
32 *
33 * 8.接口的具体使用,体现多态性
34 *
35 * 9.接口,实际上可以看做时一种规范
36 *
37 * 抽象类与接口有哪些异同?
38 *
39 *
40 */
41 public class InterfaceTest {
42 public static void main(String[] args) {
43
44 System.out.println(Flyable.MAX_SPEED);
45 System.out.println(Flyable.MIN_SPEED);
46
47 //Flyable.MIN_SPEED = 2; //不能赋值
48
49 Plane plane = new Plane();
50 plane.fly();
51 }
52 }
53
54 //接口
55 interface Flyable{
56
57 //全局常量
58 public static final int MAX_SPEED = 7900; //第一宇宙速度
59 // public static final int MIN_SPEED = 1;
60
61 int MIN_SPEED = 1; //省略了 public static final
62
63 //抽象方法
64 public abstract void fly();
65
66 // public abstract void stop();
67
68 //省略了 public abstract
69 void stop();
70
71
72
73 }
74
75 //接口
76 interface Attackable{
77
78 void attack();
79 }
80
81
82 //实现类
83 class Plane implements Flyable{
84
85 @Override
86 public void fly() {
87 System.out.println("飞机通过引擎飞");
88
89 }
90
91 @Override
92 public void stop() {
93 System.out.println("驾驶员减速停止");
94
95 }
96
97 }
98
99 abstract class Kite implements Flyable{
100
101 //kite 不能实例化了
102 @Override
103 public void fly() {
104
105
106 }
107
108
109
110 }
111
112
113 class Bullet extends Object implements Flyable,Attackable,CC{
114
115 @Override
116 public void attack() {
117
118
119 }
120
121 @Override
122 public void fly() {
123
124
125 }
126
127 @Override
128 public void stop() {
129
130
131 }
132
133 @Override
134 public void method1() {
135 // TODO Auto-generated method stub
136
137 }
138
139 @Override
140 public void method2() {
141 // TODO Auto-generated method stub
142
143 }
144
145
146 }
147
148 //*************************************************
149
150 interface AA{
151
152 void method1();
153 }
154
155 interface BB{
156 void method2();
157 }
158
159
160 interface CC extends AA,BB{
161
162 }

Java interface 接口的使用 implements 实现----的更多相关文章

  1. java interface接口的传值方法

    A 类 package interface_test; public class A { private IPresenter ip; public A(IPresenter ip) { this.i ...

  2. Java Interface接口

    Java 中接口概念 接口可以理解为一种特殊的 类,由 全局常量 和 公共的抽象方法 所组成. 类是一种具体实现体,而接口定义了某一批类所需要遵循的规范,接口不关心这些类的内部数据, 也不关心这些类里 ...

  3. JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac

    记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...

  4. java 面向对象(二十四):interface:接口

    interface:接口1.使用说明: 1.接口使用interface来定义 * 2.Java中,接口和类是并列的两个结构 * 3.如何定义接口:定义接口中的成员 * * 3.1 JDK7及以前:只能 ...

  5. Java面向对象之 接口: [修饰符] interface 接口名 {...};子接口:[修饰符] interface 接口名 extends 父接口,父接口2...{...}

    1.什么是接口? 类比抽象类,把功能或者特性类似的一类 抽象的更彻底,可以提炼出更加特殊的"抽象类"----接口 2.如何定义接口 语法:  [修饰符] interface 接口名 ...

  6. java中什么是Interface接口, 请给个实例!

    1.Interface接口的定义和用法  先直接上大白话:马克-to-win:接口就是灰常灰常抽象的抽象类,我们可以就像用抽象类一样用接口,只不过,interface抽象到不能再抽象了,以至于里面不能 ...

  7. android 学习随笔二十七(JNI:Java Native Interface,JAVA原生接口 )

    JNI(Java Native Interface,JAVA原生接口) 使用JNI可以使Java代码和其他语言写的代码(如C/C++代码)进行交互. 问:为什么要进行交互? 首先,Java语言提供的类 ...

  8. Java abstract 抽象类 和interface接口的异同点

    abstract 抽象类 和interface接口的异同点 相同点: 抽象类和接口都不能实例化,他们都位于继承树顶端,被其他类实现和继承 都可以包含抽象方法,实现接口或者继承抽象类的非抽象类(普通类) ...

  9. (转)深入理解Java的接口和抽象类

    原文地址: http://www.cnblogs.com/dolphin0520/p/3811437.html 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP ...

  10. 深入理解Java的接口和抽象类(转)

    深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...

随机推荐

  1. el-tree只展示前三个节点数据

    后端也返回了第四等级,但是不想让他展示,可以这样解决只展示前三等级 // 获取room树 getRoomTreeList() { getRoomTree().then((res) => { // ...

  2. 【二】gym初次入门一学就会---代码详细解析简明教程----平衡杆案例

    相关文章: [一]gym环境安装以及安装遇到的错误解决 [二]gym初次入门一学就会-简明教程 [三]gym简单画图 [四]gym搭建自己的环境,全网最详细版本,3分钟你就学会了! [五]gym搭建自 ...

  3. 配置VSFTP文件服务器

    FTP 文件传输协议.用于互联网上的控制文件的双向传输,使用FTP来传输时,其实是具有一定程度的危险性,因为数据在因特网上面是完全没有受到保护的明文传输方式,VSFTP是一个基于GPL发布的类Unix ...

  4. 关于 React 的作业(未完结)

    一.输出 Hello React 信息到网页的程序,非JSX的写法 代码实现如下: <!DOCTYPE html> <html lang="en"> < ...

  5. Docker从认识到实践再到底层原理(一)|技术架构

    前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 然后就是博主最近最花时间的一 ...

  6. 在Windows下编译Saba

      今天写一篇环境配置的博客,感觉这种博客比较好写   Saba是一个用于加载MMD(MikuMikuDance)模型.动作文件的C++库.下面我们在Windows下编译这个库.为了在Windows下 ...

  7. Redis的Java客户端-Jedis

    Redis的Java客户端-Jedis 在Redis官网中提供了各种语言的客户端,地址:https://redis.io/docs/clients/ 其中Java客户端也包含很多: 标记为的就是推荐使 ...

  8. Florr 从新手到大佬

    Florr 从新手到大佬 新手上路 首先在这里,你会遇到一些简单的教程.按照教程完成,也可以参考链接里的内容. 装备分为一下几种: $ \color{#7eef6D} \text{Common} $ ...

  9. WDMyCloud的ssh登陆密码错误

    是一个困扰很久的小问题,以至于无法ssh登陆到NAS服务器进行操作. 之前配置是可以直接使用root用户ssh登陆到服务器的,可是后来突然就不行了,无论输入啥密码都是报错: Permission de ...

  10. Excel 分列功能 帮助 用户 导入Excel

    今天遇见一个客户的 Excel有一列 就是 导入不进去  那列 基本都是 数字 我试了下  写入几个字符 就能导入  不写字符的 就是导入 不进去 龚蓼 告诉我 用分列功能 今天试了下  草 果然可以 ...