java - 抽象內部類+泛型
問題描述
簡單的內部類使用:
public class OuterClass { public OuterClass() { } public abstract class InnerAbstractClass {public void a() {}public abstract void absMethod(); }public void test() {new OuterClass().new InnerAbstractClass() { public void absMethod() { }}; }public static void main(String[] args) {new OuterClass().new InnerAbstractClass() { public void absMethod() { }}; }}
在上面例子中添加泛型
public class OuterClass<T> { public OuterClass() { } public abstract class InnerAbstractClass {public void a() {}public abstract void absMethod(); } public void test() {new OuterClass().new InnerAbstractClass() { public void absMethod() { }}; } public static void main(String[] args) {new OuterClass().new InnerAbstractClass() { public void absMethod() { }}; }}
在test方法中調用內部類,編譯正確。在main方法中報錯,cannot be referenced from a static context。如果在另一個新建的類中調用內部類不報錯
public class OuterClassTest { public static void main(String[] args) {new OuterClass().new InnerAbstractClass() { public void absMethod() { }}; }}
為什么???
問題解答
回答1:呵呵,點沒幫助的那位,自己復制代碼運行一下,編譯沒問題!沒有問題!
不會用ide就老老實實自己javac
相關文章:
1. android-studio - Android Studio 運行項目的時候一堆警告,跑步起來???2. dockerfile - [docker build image失敗- npm install]3. mysql - 新浪微博中的關注功能是如何設計表結構的?4. angular.js使用$resource服務把數據存入mongodb的問題。5. 如何解決Centos下Docker服務啟動無響應,且輸入docker命令無響應?6. angular.js - 關于$apply()7. MySQL數據庫中文亂碼的原因8. 表單提交驗證,沒反應,求老師指點9. nignx - docker內nginx 80端口被占用10. angular.js - Ionic 集成crosswalk后生成的apk在android4.4.2上安裝失?????
