【Java基础09_3】接口
来源:互联网 发布:a5源码被骗 编辑:程序博客网 时间:2024/04/30 10:04
概述
- 在人类社会中,人们通过学习会拥有不同的技能,每类人学的技能是不同的,学习计算机专业的人会编程,舞蹈家能够翩翩起舞,摄影师会拍照和后期修图。
- 但是,并不是每个人都会编程,不是每个人都会跳舞,更不是每个人都会修图。
- 如果把这些技能放到人类属性中,显然不合适。把这些技能放到Biology生物类中,那就更加不合适了。
因此,产生了接口,用于形容一类事物特有的“技能”。哪一类事物拥有该技能,就可以继承该接口。
特点
- 接口用关键字interface表示
- 格式:
interface 接口名 {}
- 格式:
- 类实现接口用implements表示
- 格式:
class 类名 implements 接口名 {}
- 格式:
- 接口不能直接实例化,但是可以通过多态的形式对其进行间接实例化!
- 那么,接口如何实例化呢?
- 按照多态的方式来实例化。
- 那么,接口如何实例化呢?
- 接口的子类
- 可以是抽象类。但是意义不大。
- 可以是具体类。要重写接口中的所有抽象方法。(推荐方案)
// 定义一个接口,里面是跳高的功能interface Jump { // 额外的跳高的方法 public abstract void jump(); // 无参的构造方法 // public Jump() {}}// 猫类// 错误: Cat不是抽象的, 并且未覆盖Jump中的抽象方法jump()// abstract class Cat implements Jump {}class Cat implements Jump { // 实现接口中未实现的方法 public void jump() { System.out.println("哦,可以跳高了...."); }}// 测试类class InterfaceDemo { public static void main(String[] args) { // 创建接口的对象 // 错误: Jump是抽象的; 无法实例化 // Jump j = new Jump(); // 以多态的形式对Jump进行间接实例化 Jump jump = new Cat(); jump.jump(); }}
成员特点 (重点)
- 成员变量:只能是常量,并且是静态的。
- 默认修饰符:public static final
- 建议:自己手动给出。
- 构造方法:接口没有构造方法。
- 默认修饰符:public static final
- 成员方法:只能是抽象方法。
- 默认修饰符:public abstract
- 建议:自己手动给出。
- 默认修饰符:public abstract
阅读全文
0 0
- 【Java基础09_3】接口
- 黑马程序员_3 JAVA基础
- 黑马程序员 java基础总结_3
- 【Java基础08_3】final关键字
- 【Java基础18_3】TreeMap类
- 黑马程序员 Java基础_3 数组,数组排序和应用
- 黑马程序员----JAVA基础----IO流_3及反射
- hibernate基础_3
- 安卓基础_3
- Linux 基础操作_3
- 数据库基础_3
- 面试被虐系列_基础数据结构篇_C#集合接口_3
- 【Java基础】Java接口
- [Java基础]Java接口
- java流_3
- java 代码片段_3
- 读书笔记:java线程_3
- Java初级笔记_3
- 闲来无事,来个博客写写,记录一下菜鸟是如何成为菜鸟的!!!!
- ACM大赛赛题数学的游戏(教徒求生)求解
- Java客户端连接elasticsearch5.5.3实现数据搜索(基于xpack安全管理)
- poj 分配病房问题
- ImageLoader
- 【Java基础09_3】接口
- MySQL 5.7.17 安装报错CMake Error at cmake/boost.cmake:81 (MESSAGE)
- AppCompatActivity
- 2017033000C++函数参数和返回值三种传递方式:值传递、指针传递和引用传递(着重理解)
- 集合源码学习(二):Spliterator
- (M)Dynamic Programming:304. Range Sum Query 2D
- Word Construction hiho一下第170周
- STL(下篇)
- ucosII(一)