package java_5_22;
/*
* @Description:
* @Author: Rainbow
* @version:v1.0
* @date:2021年5月22日下午2:03:47
*
* Java 定义了大量标准类,这些类库通常称为Java API(应用程序接口)。
* Java API 存放在包中,在包的层次顶部是Java 还包括子包:
* java.lang 包含大量的通用类 包含System类,使用println()执行输出时一直在使用它。
* java.lang 很特殊,因为它会自动导入每个Java程序中。
* java.io 包含i/o类 input/output 输入/输出。
* java.net 包含支持联网的类
* java.util 包含大量实用类,包括(Collections Framework)
* java.awt 包含支持 Abstract Window Toolkit
*
* Java编写的所有真实程序都包含在包中,一些程序也可能实现接口,理解包和接口,两个重要的工具。
*
* 接口能够扩展:通过使用继承关键字 extends 一个接口可以继承另一个接口。
* 扩展接口的语法与继承类的语法一样。
* 在接口中使用静态方法和私有接口方法
*/
// 1. default 默认接口添加新方法。
interface Aninterface{
public void firstMethod();
public void secondMethod();
default void newMethod() {
System.out.println("new methond!");
}
}
class Anapple implements Aninterface{
void firstMethond() {
System.out.println("first methond!");
}
void secondMethond() {
System.out.println("second methond!");
}
@Override
public void firstMethod() {
// TODO Auto-generated method stub
System.out.println("an override firstMethond!");
}
@Override
public void secondMethod() {
// TODO Auto-generated method stub
System.out.println("an override secondMethond!");
}
}
// 2. multiple inheritance 多重接口
interface one{
default void first() {
System.out.println("first !");
}
}
interface two{
default void second() {
System.out.println("second !");
}
}
interface three{
default void third() {
System.out.println("third !");
}
}
class multile_inh implements one,two,three{
}
/* 3. 接口能够扩展:一个接口可以继承另一个接口。
* 扩展接口的语法与继承类的语法一样。当一个类实现继承了其他接口的接口时,
* 它必须为在接口继承链中定义的所有的方法提供实现方式,如下例所示:
*/
interface A{
void meth1();
void meth2();
}
interface B extends A{
void meth3();
}
// 实现继承链中的所有方法
class my_class implements B{
public void meth1() {
System.out.println("implement meth1() ");
}
public void meth2() {
System.out.println("implement meth2() ");
}
public void meth3() {
System.out.println("implement meth3() ");
}
}
// 4.在接口中使用静态方法
interface MYIF{
int getuserID();
default int getAdminID() {
return 1;
}
static int getUniversalID() {
return 0;
}
}
public class java_API {
public static void main(String[] args) {
Anapple IM=new Anapple();
IM.firstMethond();
IM.secondMethond();
IM.newMethod();//default 默认接口。
System.out.println();
multile_inh MU =new multile_inh();
MU.first();
MU.second();
MU.third();
System.out.println();
my_class ob=new my_class();
ob.meth1();
ob.meth2();
ob.meth3();
int UID=MYIF.getUniversalID();//调用该static方法时,接口的实现或示例不是必须的。
// static 接口方法既不能被实现类继承,也不能被子接口继承。
}
}
Java特性之一接口
最新推荐文章于 2022-11-12 21:08:22 发布