/**
* 问题描述:
* 我们需要抽取一个共有方法,用来解决两个默认方法之间重复代码的问题
* 但是这个共有方法不应该让实现类使用,应该是私有化的。
*
* 解决方案:
* 从java 9开始,接口当中允许定义私有方法。
* 1、普通私有方法,解决多个默认方法之间重复代码问题
* 格式:
* private 返回值类型方法名称(参数列表){
* 方法体
* }
* 2、静态私有方法,解决多个静态方法之间重复代码的问题
* 格式:
* private static 返回值类型 方法名称(参数列表){
* 方法体
* }
*/
public interface MyInterfacePrivateA { /*//private用法
public default void methodDefault1(){
System.out.println("默认方法1");
methodCommon();
} public default void methodDefault2(){
System.out.println("默认方法2");
methodCommon();
} private void methodCommon(){
System.out.println("AAA");
}*/ //static用法
public static void methodStatic1(){
System.out.println("静态方法1");
methodStaticCommon();
} public static void methodStatic2(){
System.out.println("静态方法2");
methodStaticCommon();
} private static void methodStaticCommon(){
System.out.println("AAA");
}
}

java基础 接口私有方法的更多相关文章

  1. Java 基础:hashCode方法

    Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 一.前言 泥瓦匠最近被项目搞的天昏地暗.发现有些要给自己一些目标,关于技术的目标: 专注很重要.专注J ...

  2. Java基础五(方法)

    今日内容介绍1.方法基础知识2.方法高级内容3.方法案例 ###01方法的概述 * A: 为什么要有方法 * 提高代码的复用性 * B: 什么是方法 * 完成特定功能的代码块. ###02方法的定义格 ...

  3. Java基础String的方法

    Java基础String的方法 字符串类型写法格式如下: 格式一: String 变量名称; 变量名称=赋值(自定义或传入的变量值); 格式二: String 变量名称=赋值(自定义或传入的变量值); ...

  4. 为什么java的接口的方法是public abstract修饰?为什么属性是public static final 修饰?

     为什么java的接口的方法是public abstract修饰? 1.首先要明白接口的定义和作用是什么: 接口定义:接口是一个全部由抽象方法组成的集合,里面都是抽象方法和常量,用interface修 ...

  5. Java 基础 接口和多态

    接口 接口的概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”. 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成.这样将功能的 ...

  6. java基础——接口与抽象类的区别

    (1)首先接口和抽象类的设计目的就是不一样的.接口是对动作的抽象,而抽象类是对根源的抽象. (2)对于抽象类,一个类只能继承一个抽象类.但是一个类可以同时实现多个接口. (3)接口是公开的,里面不能有 ...

  7. Java基础之hashCode方法具体解释

    想要明确hashCode的作用,必须要先知道java中的集合.(不明确的请看Java基础之集合框架具体解释(二)List篇和Java基础之集合框架具体解释(三)Set篇) Java中的Collecti ...

  8. java基础 接口总结

    在java9+版本中,接口的内容可以有: 1.成员变量其实是常量,格式:[public] [static] [final] 数据类型 常量名称 = 数组值:注意: 常量必须进行赋值,而且一旦赋值不能变 ...

  9. Java基础--接口和抽象类的区别

    任何不谈使用方法的空理论都是耍流氓 使用场景 · 如果你拥有一些方法并且想让它们中的一些有默认实现,那么使用抽象类吧(Java1.8中接口也可以这么做了) · 如果你想实现多重继承,那么你必须使用接口 ...

随机推荐

  1. windows定期删除文件

    :: 定时清理客户端上传导入包文件 @echo off title 清理客户端上传导入包文件 :: 导入包文件目录 set log_dir="F:\http\uploadzip\web\ht ...

  2. django-URL路由系统

    配置 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表.你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个U ...

  3. HDU 1240 Asteroids! 题解

    Asteroids! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  4. No qualifying bean of type 'com.chinanums.agent.operation.service.component.OperationPageComponent' available:

    java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.conte ...

  5. HTML基础三-JS

    一.JAVA Script 1.1 基本用法 HTML中的三把利器的JS 又称为JavaScript,看着好像和Java有点联系,实际上他和java半毛钱关系都没有,JavaScript和我们学习的P ...

  6. ESA2GJK1DH1K升级篇: STM32远程乒乓升级,基于(GPRS模块AT指令TCP透传方式),定时访问升级(兼容Air202,SIM800)

    实现功能概要 单片机定时使用http访问云端的程序版本, 如果版本不一致,然后通过http下载最新的升级文件,实现远程升级STM32. 兼容Air202,SIM800 测试准备工作(默认访问我的服务器 ...

  7. CSP 2019游记 & 退役记

    扶苏让我记录他AK CSP 的事实 ZAY NB!!! "你不配" 两年半的旅行结束了,我背着满满的行囊下了车,望着毫不犹豫远去的列车,我笑着哭了,笑着翻着我的行囊-- 游记 Da ...

  8. vb.net 改变 excel 底色

    Dim excelApplication AsNew Excel.Application Dim excelWorkBook As Excel.Workbook = excelApplication. ...

  9. xcode: {} 花括号缩进一个空格

    if (jsonDict.HasParseError()) { //前面总是有一个空格 CCLOG("GetParseError %d\n",jsonDict.GetParseEr ...

  10. Gamma阶段项目展示

    Gamma阶段项目展示 一. 团队成员介绍 姓名 Gamma职责 个人博客 张圆宁 PM,后端 个人博客 王文珺 后端 个人博客 牛宇航 后端 个人博客 申化文 后端 个人博客 汪慕澜 测试,部署 个 ...