Java abstract interface與 interface的區別


我們常常遇到abstract class與 interface的區別,今天卻遇到了abstract interface,感覺interface不用abstract再修飾了啊。結論:事實也確實如此,編譯為.class文件后abstract interface成為了interface。

package com.abstractinterface;

public abstract interface DaemonUserSignal
{
  public abstract void signal();
}
package com.abstractinterface;

public interface DaemonUserSignal2
{
  public abstract void signal();
}

編程后結果比較:

D:\git\concurrent_crypto\target\classes\com\abstractinterface>javap DaemonUserSignal.class
Compiled from "DaemonUserSignal.java"
public interface com.abstractinterface.DaemonUserSignal {
  public abstract void signal();
}

D:\git\concurrent_crypto\target\classes\com\abstractinterface>javap DaemonUserSignal2.class
Compiled from "DaemonUserSignal2.java"
public interface com.abstractinterface.DaemonUserSignal2 {
  public abstract void signal();
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM