1 package com.bytezreo.interfacetest;
2
3 public class SubClass2 {
4 public static void main(String[] args) {
5 SubClass s = new SubClass();
6 //s.method1();
7 //SubClass.method1();
8
9 //接口中定义的静态方法,只能通过接口来调用。
10
11 InterfaceTest2.method1();
12
13 //通过实现类的对象,可以调用接口中的默认方法
14 //如果实现类重写了接口中的默认方法,调用时,仍然调用的是重写以后的方法。
15 s.method2();
16
17 //如果 子类(或实现类)继承的父类和实现的接口中声明了同名同参数的方法,
18 //那么子类在没有重写此方法的情况下,默认调用的是父类中同名同参的方法
19 // ------->类优先原则
20
21 //如果实现类 实现了多个接口,而这个多个接口定义了同名同参数的方法,
22 //那么在实现类没有重写此方法的情况下,报错----->接口冲突
23
24 //必须在实现类中重写此方法
25 s.method3();
26
27 //SubClass.method2();
28
29
30
31 }
32
33 }
34 class SubClass extends SuperClass implements InterfaceTest2,CompareB{
35
36 public void method2() {
37
38 System.out.println("SubClass:上海");
39 }
40
41 @Override
42 public void method3() {
43
44 System.out.println("SubClass:深圳");
45 }
46 //如何在子类(实现类)的方法中调用父类,接口被重写的方法
47 public void myMethod() {
48
49 method3(); //自己定义的重写方法
50 super.method3(); // 调用父类中声明的方法
51
52 //调用接口中的默认方法
53 InterfaceTest2.super.method3();
54 CompareB.super.method3();
55
56
57 }
58
59
60
61 }
 1 package com.bytezreo.interfacetest;
2
3 /**
4 *
5 * @Description interface 接口 新特性
6 * @author Bytezero·zhenglei! Email:420498246@qq.com
7 * @version
8 * @date 下午11:06:32
9 * @
10 * 还可以定义 静态方法 默认方法
11 */
12 public interface InterfaceTest2 {
13
14 //静态方法
15 public static void method1() {
16
17 System.out.println("CompareA:北京");
18 }
19
20 //默认方法
21 public default void method2() {
22
23 System.out.println("CompareA:上海");
24 }
25
26 default void method3() {
27
28 System.out.println("CompareA:上海");
29 }
30
31
32 }
 1 package com.bytezreo.interfacetest;
2
3 public class SuperClass {
4
5 public void method3(){
6
7 System.out.println("SuperClass:北京");
8 }
9
10 }
 1 package com.bytezreo.interfacetest;
2
3 public interface CompareB {
4
5 default void method3(){
6
7 System.out.println("CompareB:上海");
8 }
9
10 }

Java interface 接口 新特性的更多相关文章

  1. [转] Java 8的新特性

    简介 毫无疑问,Java 8是Java自Java 5(发布于2004年)之后的最重要的版本.这个版本包含语言.编译器.库.工具和JVM等方面的十多个新特性.在本文中我们将学习这些新特性,并用实际的例子 ...

  2. Java 8的新特性—终极版

    作者:杜琪[译] 原文链接:http://www.jianshu.com/p/5b800057f2d8 1. 简介 毫无疑问,Java 8是Java自Java 5(发布于2004年)之后的最重要的版本 ...

  3. Java 9和Java 10的新特性

    http://www.infoq.com/cn/news/2014/09/java9 Java 9新特性汇总 继2014年3月份Java 8发布之后,Open JDK加快了开发速度, Java 9的发 ...

  4. Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结

    Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结 1.1. Java的编年史2 ...

  5. JDK 15 JAVA 15的新特性展望

    目录 JEP 371: Hidden Classes JEP 372: 删除 Nashorn JavaScript Engine JEP 377: 新的垃圾回收器ZGC正式上线了 JEP 378: T ...

  6. Java 接口 新特性(Java8)

    Java8新特性之接口增强 在Java7以及以前的版本中,接口里的方法都是抽象的,并且不存在静态方法,属性默认修饰符是public static final.所有方法的声明都是public [返回类型 ...

  7. Java JDK1.8新特性之四大函数式接口

    JDK 1.8的一些新特性 四大核心函数式接口(Consumer.Predicate.Supplier.Function),结合lambda表达式 import java.util.ArrayList ...

  8. Java 新特性(5) - Java EE 5 新特性

    Java EE 5 由 Java Community Process 通过 Java Specification Request 244 发布,这个 “总纲” JSR 指出了详细描述 Java EE ...

  9. Java JDK5.0新特性

    JDK5.0新特性 虽然JDK已经到了1.8 但是1.5(5.0)的变化是最大的 1. 增强for循环 foreach语句 foreach简化了迭代器 作用: 对存储对象的容器进行迭代 (数组, co ...

  10. Java8接口新特性

    概述 Java 8中,你可以为接口添加静态方法和默认方法.从技术角度来说,这是完全合法的,只是它看起来违反了接口作为一个抽象定义的理念.猜想设计初衷可能使为了兼容8以下的jdk Java8出来了个函数 ...

随机推荐

  1. 往返回来的数据数组Array中添加一个字段的最优写法

    在工作中我们经常会对后端返回来的数据进行添加一个字段: 最优的写法是 直接在 res.data[i].xx=aa 这样的方式去添加: 添加好了之后美酒 可以去赋值了: 让表格去渲染数据 this.$a ...

  2. TienChin 新建业务菜单

    首先是移动菜单,参考下图将菜单移动到下图结构: 我这里将系统监控,系统工具都移动到了系统管理下面,并且排了个序,将多级菜单放在了一起,这样看起来更加的清晰. 修改一下系统管理(100)与TienChi ...

  3. C/C++ 实现获取硬盘序列号

    获取硬盘的序列号.型号和固件版本号,此类功能通常用于做硬盘绑定或硬件验证操作,通过使用Windows API的DeviceIoControl函数与物理硬盘驱动程序进行通信,发送ATA命令来获取硬盘的信 ...

  4. Redis 数据库配置与应用

    Redis 是一个key-value存储系统.Redis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. ...

  5. org.apache.hadoop.security.AccessControlException: Queue root.online already has 0 applications, cannot accept submission of application

    org.apache.hadoop.security.AccessControlException: Queue root.online already has 0 applications, can ...

  6. HanLP — 词性标注

    词性(Part-Of-Speech,POS)指的是单词的语法分类,也称为词类.同一个类别的词语具有相似的语法性质 所有词性的集合称为词性标注集. 词性的用处 当下游应用遇到OOV时,可以通过OOV的词 ...

  7. HarmonyOS 开发入门(一)

    HarmonyOS 开发入门(一) 日常逼逼叨 因为本人之前做过一些Android相关的程序开发,对移动端的开发兴趣比较浓厚,近期也了解到了一些关于华为HarmonyOS 4.0 的事件热点,结合黑马 ...

  8. JuiceFS 新手必知 24 问

    JuiceFS 是一个创新性的软件产品,很多初次尝试的小伙伴对产品和用法感到很多疑惑,所以为了帮助大家快速理解并上手 JuiceFS,我们整理了24个关于 JuiceFS 经典的问题答案,相信经过这 ...

  9. (C语言)每日代码||2023.12.25||函数传参,传入数组时传递的是数组首元素地址

    向函数传入某数组时,可以在函数内修改该数组的元素. #include <stdio.h> void test(char* p, char arr[]) { *p = 'h';//能改变 * ...

  10. 面试官:Sentinel是如何实现限流的?

    限流是一种通过控制系统对外提供的资源.服务或接口的访问数量或速率,以保护系统免受过载的一种策略. 它的目的是确保系统能够在承受范围内提供稳定和可靠的服务,避免因过多的请求而导致系统崩溃.资源耗尽或响应 ...