一个问题(关于性能)

今天得到的,总结一下:对象只有在你需要的时候再实例化,不然会浪费你的内存空间。
看似很基础,不过又有很多人注意了呢?
给一个很简单的例子吧。

public class A {
    
public String getstring = this.getWord();
    
    
public String getWord(){
        System.out.println(
"put your word");
        String word 
= null;
        BufferedReader bf 
= new BufferedReader(new InputStreamReader(System.in));
        
try {
            word 
= bf.readLine();
        } 
catch (IOException e) {
            e.printStackTrace();
        }
        
return word;
    }
    
    
public void display(){
        
if(getstring.toLowerCase().startsWith("y")){
            System.out.println(
"null you input");
        }
else{
            System.out.println(getstring);
        }
    }
    
    
public static void main(String [] args){
        A a 
= new A();
        A b 
= new A();
        a.display();
    }
}

查看用户是否以y字母输入,如果是的话就显示“null you input”。
但当你运行的时候却要输入2次,原因是你实例化了2个对象在那。
如果说现在只有一个用户的话,要他输入2次是很不现实的问题。
正如上面的,如果变量如果调用的是一个需求空间很大的方法的时候,那样所消耗的空间是很大的。
如果说你是一个b/s系统的话,而同时访问的人又很多的话,那样内存消耗会很大很大。

posted on 2009-04-20 00:19 duduli 阅读(181) 评论(0)  编辑  收藏 所属分类: java


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 
<2009年4月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

导航

统计

公告

welcome to my place.

常用链接

留言簿(5)

我参与的团队

随笔分类

随笔档案

新闻分类

石头JAVA摆地摊儿

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜

@duduli