作者tnsshnews (tnsshnews)
看板java
标题[问题] 为何static method不用物件化便能直接使?
时间Thu Oct 25 15:46:53 2012
Dear all,
public class demo{
public static String test1;
public static String getString(){
return test1;
}
}
static放在变数或是方法之前代表是class level的变数,
但为什麽要使用getString方法时, 只要直接用demo.getString就好呢?
虽然是class等级, 但这个class在之前如果都没有被使用过, 这边直接呼叫,
记忆体空间怎麽会已经配置好空间存放呢?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.166.9.112
1F:推 PsMonkey:囧... 只能说,请参阅 Java Spec 有明确定义 10/25 15:50
2F:→ LaPass:你应该问.... 为什麽非static澳宣告才能使用才对...... 10/25 16:34
3F:推 LaPass: 要 10/25 16:39
4F:→ PsMonkey:嗯? 我到觉得这两个问题没啥交集耶 XD 10/25 16:53
5F:→ tkcn:Class object 是由 JVM 负责建立的 10/25 17:03
6F:推 tomoyaken14:你怎麽知道他没有物件化? 10/25 22:12
7F:推 SansWord:话说Class 名称还是大写开头看起来比较顺。 10/26 09:47
8F:推 LaPass:小写的话,会跟packet的名称冲到..... 在用反射之类的东西 10/26 09:54
9F:→ LaPass:可能会出问题。之前在板上看过有人po出这种状况 10/26 09:58
10F:推 Schelfaniel:其实像Scala把static直接拆到object新手比较容易理解 10/26 18:01