Java interface 接口的使用 implements 实现----
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 实现----的更多相关文章
- java interface接口的传值方法
A 类 package interface_test; public class A { private IPresenter ip; public A(IPresenter ip) { this.i ...
- Java Interface接口
Java 中接口概念 接口可以理解为一种特殊的 类,由 全局常量 和 公共的抽象方法 所组成. 类是一种具体实现体,而接口定义了某一批类所需要遵循的规范,接口不关心这些类的内部数据, 也不关心这些类里 ...
- JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac
记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...
- java 面向对象(二十四):interface:接口
interface:接口1.使用说明: 1.接口使用interface来定义 * 2.Java中,接口和类是并列的两个结构 * 3.如何定义接口:定义接口中的成员 * * 3.1 JDK7及以前:只能 ...
- Java面向对象之 接口: [修饰符] interface 接口名 {...};子接口:[修饰符] interface 接口名 extends 父接口,父接口2...{...}
1.什么是接口? 类比抽象类,把功能或者特性类似的一类 抽象的更彻底,可以提炼出更加特殊的"抽象类"----接口 2.如何定义接口 语法: [修饰符] interface 接口名 ...
- java中什么是Interface接口, 请给个实例!
1.Interface接口的定义和用法 先直接上大白话:马克-to-win:接口就是灰常灰常抽象的抽象类,我们可以就像用抽象类一样用接口,只不过,interface抽象到不能再抽象了,以至于里面不能 ...
- android 学习随笔二十七(JNI:Java Native Interface,JAVA原生接口 )
JNI(Java Native Interface,JAVA原生接口) 使用JNI可以使Java代码和其他语言写的代码(如C/C++代码)进行交互. 问:为什么要进行交互? 首先,Java语言提供的类 ...
- Java abstract 抽象类 和interface接口的异同点
abstract 抽象类 和interface接口的异同点 相同点: 抽象类和接口都不能实例化,他们都位于继承树顶端,被其他类实现和继承 都可以包含抽象方法,实现接口或者继承抽象类的非抽象类(普通类) ...
- (转)深入理解Java的接口和抽象类
原文地址: http://www.cnblogs.com/dolphin0520/p/3811437.html 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP ...
- 深入理解Java的接口和抽象类(转)
深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...
随机推荐
- ClickHouse(14)ClickHouse合并树MergeTree家族表引擎之VersionedCollapsingMergeTree详细解析
目录 建表语法 使用场景 合并算法 使用例子. 资料分享 参考文章 VersionedCollapsingMergeTree引擎继承自MergeTree并将折叠行的逻辑添加到合并数据部分的算法中.Ve ...
- 2023年第七届蓝帽杯初赛wp
取证检材容器密码:Hpp^V@FQ6bdWYKMjX=gUPG#hHxw!j@M9 案情介绍 2021年5月,公安机关侦破了一起投资理财诈骗类案件,受害人陈昊民向公安机关报案称其在微信上认识一名昵称为 ...
- 多智能体强化学习算法【一】【MAPPO、MADDPG、QMIX】
相关文章: 常见多智能体强化学习仿真环境介绍[一]{推荐收藏,真的牛} 多智能体强化学习算法[一][MAPPO.MADDPG.QMIX] 多智能体强化学习算法[二][MADDPG.QMIX.MAPPO ...
- C/C++ Qt 命令行版网络通信
通常情况下Qt如果需要建立网络通信则必须依附于图形界面,但如果是新手入门,图形界面则显得太过于繁琐不利于学习原理,如下本人实现了命令行版本的网络通信案例,能够让读者更好的理解Qt是如何创建网络通信套接 ...
- 多路io复用pool [补档-2023-07-19]
多路IO- poll 3.1简介 poll的机制与select类似,他们都是让内核在以线性的方法对文件描述符集合进行检测,根据描述符的状态进行具体的操作.并且poll和select在检测描述符集合 ...
- 遥感图像处理笔记之【Machine Learning CS-433 - Class Project 2 - Road Segmentation - EPFL】
遥感图像处理学习(8) 前言 遥感系列第8篇.遥感图像处理方向的学习者可以参考或者复刻 本文初编辑于2024年1月2日 本文再编辑于2024年1月4日:附作者改进U-Net网络图片:文字补充说明 20 ...
- ROS节点通信(一)消息发布和订阅
目录 1.说明 2.创建工作空间 3.创建功能包 4.编写自定义传输类型文件 5.编写源代码 5.1.编写发布者代码 5.2.编写订阅者代码 6.编译 7.启动运行 8.查看ROS网络结构图 1.说明 ...
- C#中DataTable数据导出为HTML格式文件
/// <summary> /// DataTable导出为HTML的Table并保存到本地 /// </summary> /// <param name="d ...
- 目录:CH57x/CH58x/CH59x/CH32V208低功耗蓝牙应用
外设相关: CH59x 系统16位PWM使用 - 小舟从此逝_1 - 博客园 (cnblogs.com) CH59X/CH58X/CH57X PWM使用 - 小舟从此逝_1 - 博客园 (cnblog ...
- Mysql 创建外键、索引的问题
总结: 创建外键的列,要求必须创建索引,通常我们只需要创建外键就可,索引他会自动创建.若是索引那里已经存在了组合索引,那么组合索引前面的第一列已经有了索引,所以创建外键的时候不会自动创建,但是后面的列 ...