作者singlovesong (~"~)
看板java
標題[問題] non-satic variable this cannot be...
時間Fri Jan 20 22:56:01 2012
不多說 code 很短 直接貼上code
import java.util.*;
public class Access {
class Super{
String A = "SUPER";
void Print(){
System.out.println("Hey I am Super my a is " + A);
}
}
class Sub extends Super{
String A = "SUb";
void Print(){
System.out.println("Hey I am Sub my a is " + A);
}
}
public static void main(String args[]){
Sub sub = new Sub();
Super sup = sub;
}
}
結果compile 之後 出現了這個訊息
Access.java:18: non-static variable this cannot be referenced from a static context
Sub sub = new Sub();
^
1 error
想請問是為什麼呢?
我知道如果把那兩個class 拉到主class 的外面就會過了
不過主要是想知道為什麼... Sub sub = new Sub()
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 58.114.85.48
→ ssc24:class包class 會變成內部類別 參考如下 01/20 23:12
→ pzyc79:Sub sub = new Access().new Sub(); 或 static class Sub 01/21 10:56