看板java
標 題Re: 一個很笨的問題
發信站KKCITY (Sat Jul 17 04:37:45 2004)
轉信站ptt!ctu-reader!ctu-peer!Spring!news.nctu!news.ntu!bbs.ee.ntu!news.kkci
來統整一下三位大大的解說
========================
Q:
main method 為何要在傳回型態前要加 static 的原因???
A:
littlebie98:
main一定要是static,因為是程式最開始的進入點
RedRabbit:
它是在物件還沒創出來就要執行的方法
加了static可以直接在類別裡面被執行
不然要用new產生新物件
初學者先不要去討論這估東西啦
後面會提到
ytterbium:
初學者, 只要記住所有application程式碼的main 都是這樣宣告就是了.
如果不是static, 那一開始就沒有object, 所以就不能call this method
Q:
在類別裡面宣告傳回值的方法為何前面要加static
是否是因為main的那個static的關係呢?
A:
littlebie98:
static- 靜態
修飾在method上面,
有與object無關的意思(指和裡面的member的關係)
(
籠統的來看...更容易理解的方式..
就是不需要new就可用的就叫static...
A a = new A();
a.f();==>這是與object有關
A.k();=>這是與object無關
)
因此,若是一個A.k()用到一個和object有關member or funtion,
建構後才有的那還真是怪,所以 static funtion只能使用static member
和static funtion
ytterbium:
兩個完全沒關係, static表示這個method is class method 而
不是 object method
RedRabbit:
你說的一點也沒錯,就是因為這個原因
第一個問題我懂了
對於第二個問題各大大間彼此有不同的意見
再請問那一個說法才是正確滴.....@@a??
也謝謝 littlebie98、ytterbium 及 RedRabbit 精闢的解說
fish
--
┌─────◆程式設計樂園◆─────┐ ╱ ╱  ̄ ▌ ̄  ̄ ╲╱ BBS 城邦
│ CSZone.kkcity.com.tw │ ╲ ╲ ╴ ▌ ▌ ▏ KK免費撥接
└──《From:218.162.36.99
》──┘ 電話:449-1999 帳號:kkcity 密碼:kkcity