java 核心技术-12版 卷Ⅰ- 6.1.4 静态和私有方法

createh55个月前 (02-01)技术教程84

原文

6.1.4 静态和私有方法

在 Java 8 中,允许在接口中增加静态方法。理论上讲,没有任何理由认为这是不合法的。只是这似乎有违于将接口作为抽象规范的初衷。

目前为止,通常的做法都是将静态方法放在伴随类中。在标准库中,你会看到成对出现的接口和实用工具类,如Collection/Collections 或 Path/Paths。

?可以由一个URI或者字符申序列构造一个文件或目录的路径,如 Paths.get("jdk-17","conf" ,"security")。在 Java 11 中,Path 接口提供了等价的方法:

?

public interface Path{

	public static Path of(URI uri){...}
  public static Path of((String first, String... more){...}
}

?这样一来,Paths 类就不再是必要的了。

?类似地,实现你自己的接口时,没有理由再为实用工具方法另外提供一个伴随类。

?在Java 9中,接口中的方法可以是 private 方法。private方法可以是静态方法或实例方法。由于私有方法只能在接口本身的方法中使用,所以它们的用途很有限,只是作为接口中其他方法的辅助方法。

相关文章

Python之面向对象:私有属性是掩耳盗铃还是恰到好处

引言声明,今天的文章中没有一行Python代码,更多的是对编程语言设计理念的思考。上一篇文章中介绍了关于Python面向对象封装特性的私有属性的相关内容,提到了Python中关于私有属性的实现是通过“...

浅谈Java内省(java内存详解)

作者:京东物流 王国泰一、什么是内省讲内省,不得不说Java Bean,Bean在Java中是一种特殊的类,主要用于装载数据,数据会被存储在类的私有属性中,通常具有无参构造函数、可序列化、以及通过ge...

思考:Java对象之生(java中对象的概念的理解)

内存、性能是程序永恒的话题,实际开发中关于卡顿、OOM也经常是打不完的两只老虎,关于卡顿、OOM的定位方法和工具比较多,这篇文章也不打算赘述了,本章主要是来整理一下JVM的内存模型以及Java对象的生...

Java设计模式-单例模式(java单例模式原理)

单例模式定义:它确保一个类只有一个实例,并提供一个全局访问点来访问该实例。单例模式主要分为两大类:饿汉式和懒汉式,懒汉式又分为 单线程下的普通懒汉式,多线程下的双重校验锁、静态内部类、枚举。单例模式的...

终于搞懂了 Java 8 的内存结构,再也不纠结方法区和常量池了

java8内存结构图虚拟机内存与本地内存的区别Java虚拟机在执行的时候会把管理的内存分配成不同的区域,这些区域被称为虚拟机内存,同时,对于虚拟机没有直接管理的物理内存,也有一定的利用,这些被利用却不...

CentOS+Nexus搭建npm私有仓库并推送代码

一、Nexus说明Nexus用来搭建私有仓库,方便Java库、npm等库的管理。Nexus常用功能就是:指定私服的中央地址、将自己的Maven项目指定到私服地址、从私服下载中央库的项目索引、从私服仓库...