看板 java 關於我們 聯絡資訊
養成良好習慣 隨時隨地加上 this 或是 物件名稱 可以讓自己比較了解這個東西的觀念 也能讓自己知道自己正在用什麼東西 我也是剛從C#跳槽過來的Java新手,大家一起來努力學習 ^^" http://ppt.cc/zFR5 簡單來講 前面沒加 static 的欄位、方法 你可以把它當成像是一個「模子」 要使用時,必須先從先用模子製造出一個實際存在的東西後,才能使用 物件 新物件 = new 物件(); ↑ 像這樣用「物件」這個模子去製造出一個「新物件」 之後才能 新物件.動態方法(); 新物件.動態欄位; 去使用這個東西 反過來說,前面有加static 的欄位、方法 就把它當成是「公佈欄」那樣的東西 每個人都去貼公告、塗鴉,而且看的、摸到的都是同一個公布欄 不管是哪個物件、哪個一個方法,甚至是外部其他的class 只要用 物件.靜態欄位; 物件.靜態方法(); 使用到的都是同一個欄位、方法。 ※ 引述《ctr1 (【積π】)》之銘言: : public class FirstSample{ : static int a; : private int b; //前面沒有static : private void counter(){ : int z; : z=12; : System.out.println("b="+b); //那這行為什麼可以執行 : } : public static void main (String args[]){ //因為這個字 : int i=1,x=2; : System.out.println("i="+i); : System.out.println("x="+x); : System.out.println("b="+b); //不能執行 : System.out.println("a="+a); : FirstSample abc=new FirstSample(); : abc.counter(); : } : } : 第13行不能執行,第7行為什麼可以執行? : 書上的解釋還是不清楚,我是個新手 Q_Q : 請板上的前輩幫我解答 : 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.233.157.84
KarlJhan:為什麼不試著從complier的行為去解釋@@? 08/04 06:24
LaPass:因為在學語法的時候,我根本不會想去知道底層到底在幹什麼 08/04 07:56
LaPass:雖然,寫程式寫久後,多多少少也會知道底層在幹什麼。 08/04 07:59
LaPass:但學寫程式時,我覺得先能夠寫東西來比較重要。 08/04 08:02
KarlJhan:多少還是得瞭解一點,不然真的有人能聽的懂 靜態、動態? 08/04 08:10
Aussie0117:同意樓上說法....應該以compiler的角度去說明會比較好 08/05 22:07
a1234957:多少還是要了解JVM怎麼運作的 08/06 00:49
a1234957:靜態動態真的要以compile期間來說明會比較清楚 08/06 00:52
a1234957:建議是這樣,不要排斥底層... 08/06 00:59
lachtchlee:ppt.cc/zFR5 寫 class 物件{ 觀念錯 >>class NAME{ 08/06 20:34
lachtchlee:CLASSNAME referenceOfObject = new CLASSNAME(); 08/06 20:38
lachtchlee:嚴格的激怒 才會變成真正的高手 歡迎再reply 08/06 22:51
a1234957:一般來說 instance才稱為object 08/06 23:57