java 接口的访问权限_证明接口interface中定义的方法的访问权限为public
如題,證明Java中接口文件中定義的方法訪問權(quán)限為public。
眾所周知,接口中的方法默認(rèn)是public abstract 類型的,它必須由子類實(shí)現(xiàn)之。那怎么證明呢,反射。
定義接口文件
package com.zhangqi.jvm;
import java.util.Date;
public interface ITest {
double PI = 3.14;
Date CREATE_TIME = new Date();
void play();
String getName();
}
接口文件中定義兩個(gè)靜態(tài)常量PI 和 CREATE_TIME ,兩個(gè)方法 play 和 getName 。
接下來,測(cè)試方法來反射獲取靜態(tài)變量和方法。
package com.zhangqi.jvm;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class ReflectTest {
public static void main(String[] args) throws ClassNotFoundException {
// 加載com.zhangqi.jvm.ITest類文件
Class> clazz = Class.forName("com.zhangqi.jvm.ITest");
// 獲取類中所有方法
Method[] methods = clazz.getDeclaredMethods();
// 遍歷每個(gè)方法,并輸出該方法
for (Method method : methods) {
System.out.println(method.toString());
}
System.out.println("~~~~~~~~~~~~~~~~~~~~~");
// 獲取類中所有靜態(tài)變量
Field[] fields = clazz.getDeclaredFields();
// 遍歷所有常量
for (Field field : fields) {
System.out.println(field);
}
}
}
執(zhí)行之后,得到輸出結(jié)果
public abstract java.lang.String com.zhangqi.jvm.ITest.getName()
public abstract void com.zhangqi.jvm.ITest.play()
~~~~~~~~~~~~~~~~~~~~~
public static final double com.zhangqi.jvm.ITest.PI
public static final java.util.Date com.zhangqi.jvm.ITest.CREATE_TIME
從而證明,靜態(tài)變量的修飾詞為
public static final
方法的修飾為
public abstract
總結(jié)
以上是生活随笔為你收集整理的java 接口的访问权限_证明接口interface中定义的方法的访问权限为public的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 十年山寨内存揭秘:别再被低价诱惑,稳定性
- 下一篇: b150主板升级内存,这些你必须知道