接口(interface)

语法:修饰符 interface 接口名 extends 父接口1,父接口2....{

//常量定义   //方法定义}

class 类名 extends 父类名 implements 接口1 ,接口2..{

//类成员  }

接口的详细说明:

在生活中,接口是一套规范,满足这个规范的设备就可以将他们组装到一起,也是可以实现具体复杂事物但有规律的功能(类似插座)

1.接口的命名规则与类相同,修饰符是public,接口会在整个项目中可见,省略修饰符该接口只在包中可见

2.接口中的属性默认(自动用public static final修饰不写自动添加,接口中的属性都为全局静态常量,必须在定义时赋初始值[不可更改])

3.接口中的所有方法都为抽象方法,接口中的方法自动用public abstract 修饰,即接口中只有全局抽象方法,所有方法都得用public修饰

4.和抽象类一样,接口也不能实例化,接口中不能有构造方法

5.接口之间可通过extends实现继承关系,一个接口可继承多个接口,但接口不能继承类

6.接口的实现类必须实现接口的全部(抽象)方法,否则必须定义为抽象类

7.一个类只能有一个直接父类,但可以通过implements实现多个接口,当类在继承父类的同时又实现了多个接口时extends关键字必须位于implements前面(即实现继承又实现接口)先继承后实现接口[java是单继承多实现]

接口的好处:

不仅妳补了java只支持单继承的缺点,还利于代码的扩展和维护

接口于抽象类的区别:

抽象类利于代码的复用,接口利于代码扩展和维护

java.lang.Object 6个方法:

equals()方法(比较字符串是否相等)

toString()方法(输出一个对象的地址)

clone()方法(复制一个对象)

finalize()方法(让垃圾回收器释放内存的时候)

wait()方法(进入等待状态)

hashCode()方法(按照一些规则把对象变为数值)

总结:

一个类要实现接口的功能,要实现接口的全部方法所以接口中不能有构造方法

接口中方法的方法体内有0条代码 抽象类

java第四章接口的更多相关文章

  1. Java程序设计(2021春)——第四章接口与多态笔记与思考

    Java程序设计(2021春)--第四章接口与多态笔记与思考 本章概览: 4.1 接口(接口的概念和声明接口.实现接口的语法) 4.2 类型转换 4.3 多态的概念 4.4 多态的应用 4.5 构造方 ...

  2. Java程序设计(2021春)——第四章接口与多态课后题(选择题+编程题)答案与详解

    Java程序设计(2021春)--第四章接口与多态课后题(选择题+编程题)答案与详解 目录 Java程序设计(2021春)--第四章接口与多态课后题(选择题+编程题)答案与详解 第四章选择题 4.0 ...

  3. “全栈2019”Java第四章:创建第一个Java程序

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. [Effective Java]第四章 类和接口

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  5. 第三周学习java第四章学习总结及体会!

    第三周java 2第四章的学习总结: 一.主要内容(类与对象): 1.类: 2.构造方法与对象的创建: 3.类与程序的基本结构: 4.参数传值: 5.对象的组合: 6.实例成员与类成员: 7.方法重载 ...

  6. Java 第四章 选择结构2

    第四章 选择结构 (二) switch 选择结构的执行流程是怎样的? switch 选择结构中break关键字的作用? 本章目标 掌握 switch 选择结构 能够综合运用 if 选择结构 和 swi ...

  7. 控制执行流程 Thinking in Java 第四章

    4.1 true 和 false *Java 不允许将一个数字作为布尔类型(虽然在C和C++中可以),使用时需要条件表达式将其转换为布尔类型: 如下: if( a!= 0) 4.2 if-else 4 ...

  8. core java 第四章笔记

    import java.util.*; public class Employee { private static int nextid = 1; private String name; priv ...

  9. Thing in java 第四章,控制执行流程,练习题答案

    /** * Created by Sandy.Liu on 2018/7/19. * Thinking in java, version 4, chapter 4, practice 1 * Writ ...

随机推荐

  1. DES加密算法—实现(C语言)

    http://www.iteye.com/topic/478024 DES(Data Encrypt Standard数据库加密标准)是迄今为止使用最广泛的加密体制. 初学信息安全的新生,一般都会被老 ...

  2. rocketmq(三 java操作rocket API, rocketmq 幂等性)

    JAVA操作rocketmq: 1.导入rocketmq所需要的依赖: <dependency> <groupId>com.alibaba.rocketmq</group ...

  3. MySQL单机单实例安装脚本(转载)

    说明:使用mysql generic tar.gz包快速安装mysql 三个文件installation_of_single_mysql.sh.template_install-my.cnf.mysq ...

  4. LINUX FTPshez

    https://www.jb51.net/article/132337.htm FTPQ重启: service vsftpd restart

  5. js异步处理历程

    为什么会出现异步: js执行环境是单线程的,异步处理就非常重要. 处理的方法: 方法一:callback hell 解决:解决了异步处理 存在问题:出现多个回调函数嵌套,代码就会比较乱,出现回调地狱现 ...

  6. (12)SecureCRT中文乱码问题

    Options -- Session Options -- Appearance --Character encoding:选择UTF-8

  7. ==和equals的比较方式

    关系操作符生成的是一个boolean结果,它们计算的是操作数的值之间的关系.——摘自<Java编程思想> 多读几遍之后你会发现——这不就是句废话么233333.(开个玩笑不要打我) 先说 ...

  8. 深入理解Java虚拟机读书笔记4----虚拟机类加载机制

    四 虚拟机类加载机制 1 类加载机制     ---概念:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型.     -- ...

  9. 嵌入式linux——S3C2440介绍(二)

    一.关于S3C2440要知道的事情 (唉,刚才按错了键,弹出了网页的代码,关闭之后,白屏,什么都没有,网页返回,就没保存上,在敲一边...) 1. S3C244三星公司的芯片 2. S3C2440的构 ...

  10. python初学心得之一

    昨天开始接触并学习python,对python有了初步印象. 一.python主要应用方向 二.python语言类型 三.python2和3的主要区别 四.常见字符编码 五.Python语法初学  一 ...