作者ogamenewbie (._.)
站内java
标题Re: [问题] 在类别中生成一个自己的实例(static用 …
时间Fri Jul 13 02:52:24 2007
※ 引述《Ronamtis (Tis)》之铭言:
: 大家好,我刚学习 Java,对一些概念都在似懂非懂的状态中,希望大家解答小弟
: 疑惑,并指出正确的观念应该是什麽。
: 以下这段程式码
: public class AccountDB {
: private static AccountDB onlyInstance = null;
: //其余成员变数在此
: public AccountDB() {
: //建构式
: }
: public static AccountDB instance () {
: if (onlyInstance == null) onlyInstance = new AccountDB();
: return onlyInstance;
: }
: }
Singleton?... 不过建构式怎麽是 public...
: 我的问题是:在 AccountDB 类别产生了一个 AccountDB 自己的实例,这到底是怎
: 麽回事呢?是否因为 onlyInstance 被宣告成 static,只有在类别第一次被呼叫时
: 会产生出来,所以不会发生无穷回圈的问题?(我知道这里只产生了参考物件,但
: 在其他地方曾看过一个类别的宣告中又生成一个自己的 static 物件的程式码,在这
: http://www.javaworld.com.tw/jute/post/view?bid=29&id=132496&sty=1&tpg=5&age=0)
我个人是不太清楚怎麽用 if 达成无穷回圈...
这个疑问交给其他人吧...
: 第二个问题是:被宣告成 static 的 method 不会有实体变数,那宣告成 static 的
: 物件会真的产生一个物件,并且有自己的成员吗?
: 没用实体变数的 method (或物件?)不会占用 heap 的空间,但是怎麽执行的呀?
: 观念很不清楚,不知道有没有善心人士可以指点一下迷津...谢谢 :)
http://caterpillar.onlyfun.net/Gossip/JavaGossip-V1/AboutStaticMember.htm
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.25.148.49