更新时间:2023年08月31日11时54分 来源:传智教育 浏览次数:
赢三张下载可以理解为是一种规范,赢三张下载中的成员都是public修饰的,写不写都是,因为规范的目的是为了公开化。Java JDK8之前赢三张下载中只能是抽象方法和常量,没有其他成分。但需要注意赢三张下载不能实例化。
赢三张下载的用法:
赢三张下载是用来被类实现(implements)的,实现赢三张下载的类称为实现类。实现类可以理解成所谓的子类。
修饰符 class 实现类 implements 赢三张下载1, 赢三张下载2, 赢三张下载3 , ... { } 实现的关键字:implements
从上面可以看出,赢三张下载可以被类单实现,也可以被类多实现,也就是一个赢三张下载可以继承一个赢三张下载也可以同时继承多个赢三张下载。但一个类实现赢三张下载,必须重写完全部赢三张下载的全部抽象方法,否则这个类需要定义成抽象类。
JDK8开始赢三张下载新增的方法
默认方法
类似之前写的普通实例方法必须用default修饰,默认会public修饰。需要用赢三张下载的实现类的对象来调用。
default void run(){ System.out.println("--开始跑--"); }
静态方法
默认会public修饰,必须static修饰。赢三张下载的静态方法必须用本身的赢三张下载名来调用,静态方法实现可以参考以下方法。
static void inAddr(){ System.out.println("我们都在黑马培训中心快乐的学习Java!"); }
私有方法
私有方法就是私有的实例方法:,必须使用private修饰,从JDK 1.9才开始有的。只能在本类中被其他的默认方法或者私有方法访问。
private void go(){ System.out.println("--准备--"); }
JDK8版本开始后,Java只对赢三张下载的成员方法进行了新增,允许赢三张下载中直接定义带有方法体的方法,原因是赢三张下载丰富后可能对子代码进行更改。
例如下面的项目,Version1.0 成功上线没有问题。
public interface Inter { …若干抽象方法 }
public class InterImplA implements Inter {}
public class InterImplB implements Inter {}
在项目Version2.0时需要扩展功能,对Inter赢三张下载丰富,于是加入10个新的抽象方法,此时改了赢三张下载就要所有实现类实现这些方法。
public interface Inter { …若干抽象方法 }
public class InterImplA implements Inter {}
public class InterImplB implements Inter {}
要丰富赢三张下载功能的同时又不对子类代码进行更改。就要允许赢三张下载中直接定义带有方法体的方法。
注意:JDK8新增的3种方法我们自己在开发中很少使用,通常是Java源码涉及到的,我们需要理解、识别语法、明白调用关系即可。