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. NetCore高级系列文章01---创建项目及配置文件

    .NET Core是适用于 Windows.Linux 和 macOS 的免费.开源托管的计算机软件框架,作为.NET开发人员,全面拥抱.NetCore将成为趋势. 本系列文章将分为两大部分讲解.Ne ...

  2. CCFLOW源码解读系列01-----发起流程

    1.发起流程 发起流程时主要做了两件事:一是写入业务数据表,二是新建一条审批流程记录. 发起流程的方法 public static Int64 Node_CreateStartNodeWork(str ...

  3. MyBatis 源码系列:MyBatis 体系结构、六大解析器

    体系结构 MyBatis是一个持久层框架,其体系结构分为三层:基础支持层.核心处理层和接口层. 基础支持层包括数据源模块.事务管理模块.缓存模块.Binding模块.反射模块.类型转换模块.日志模块. ...

  4. MySQL 之基础命令(精简笔记)

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RD ...

  5. Windows 11 ISO原版镜像文件下载(2024年01月)

    Windows 11 (business editions), version 23H2 (x64) - DVD (Chinese-Simplified) 链接:https://pan.baidu.c ...

  6. Oracle配置DCD避免会话被防火墙强制断开

    今天有客户反馈应用测试连接Oracle数据库的会话半小时左右未做操作就会被中断,报错ORA-3113,询问数据库是否有这样的超时设置,能否取消掉这个限制? 登上环境查看监听日志发现连接的IP和数据库I ...

  7. TPopupMenu 替换 自身自动的 热键

    有时候自动生成的热键 并不是 很理想 这个时候 需要 用自己认为好的 方法如下图,加个(&热键)

  8. Shell 特殊符号(变量)用法小结

    Shell | 特殊变量   $n 基本语法: $n (功能描述:n 为数字,$0 代表该脚本名称,$1-$9 代表第一到第九个参数,十以上的参数,十以上的参数需要用大括号包含,如${10}) 例如: ...

  9. 云原生服务网格Istio:原理、实践、架构与源码解析

    华为云原生团队600多页的Istio实战精华总结,云原生服务网格Istio:原理.实践.架构与源码解析的电子书. 图书介绍 <云原生服务网格Istio:原理.实践.架构与源码解析>分为原理 ...

  10. 【Unity3D】激光灯、碰撞特效

    1 需求描述 ​ 本文将模拟激光灯(或碰撞)特效,详细需求如下: 从鼠标位置发射屏幕射线,检测是否与物体发生碰撞 当与物体发生碰撞时,在物体表面覆盖一层激光灯(或碰撞)特效 ​ 本文代码见→激光灯.碰 ...