① java如何判斷一個類是否實現了某個介面
Class中有個方法 public native boolean isAssignableFrom(Class<?> cls)用來判斷子類是否繼承於父類的或者父介面的。
你會這樣子寫:
Class clazz = ....;
clazz.isAssignableFrom(子類名稱);返回true說明是掛號里的類的父類或父介面。
clazz.isAssignableFrom(子類名稱)里的子類名稱跟版本有關,好像是1.5以上的JDK這里的子類名稱都是使用的泛型編程。即傳的傳數是
class<T> 類型的,你用的時候自己斟酌下版本問題。
而常用的instanceof(class ..)是指該實例是否屬於掛號中的類的父類的一個實例。
如上面的例子:
class A{
}
public class B extends A{
public static void main(String[] args){
Class clazz = B.class;
Class class1 = A.class;
System.out.println(class1.isAssignableFrom(clazz));
if(class1.isAssignableFrom(clazz)){
System.out.println("A是B的父類");
}else{
System.out.println("A不是B的父類");
② 怎樣把java的一個類定義成介面
我給你舉個例子吧復:
public interface Test(){
void hello();
//介面中的方法制只能是聲明,不能有具體實現,而且必須是 public 的,默認情況下就是public 所以你可以不寫修飾符。
String getMessage(String a);
}
然後在實現類中必將方法的限定范圍定義為public,實現類如下:
public class TestImpl implements Test{
public void hello(){
System.out.println("hello ");
}
public String getMessage(String a){
return "dsaf";
}
}
我建議你還是多看Java基礎的書,希望我的回答對你有所幫助。
③ java 中 interface 與 class 的區別是什麼
interface是指介面,其中只有抽象方法,沒有數據域,不能用其創建對象,可以繼專承其他介面,但是不能實現屬其他介面。
class是指類,不能有抽象方法,可以有數據域,可以創建對象,可以實現介面不能繼承介面。
④ java中。介面名.class 表示什麼啊
介面名.class表示類載入器的一個方法,載入指定的類名。