• java内存管理的小技巧


    1,尽量使用直接量。
        采用String str="hello"; 而不是 String str = new String(“hello”);
    2,使用StringBuilder和StringBuffer进行字符串连接。
        String、StringBuilder、StringBuffer都可代表字符串,其中String代表字符序列不可变的字符串,而StringBuilder、StringBuffer都代表字符序列可变的字符串。
    3,尽早释放无用对象的引用
     Object obj = new Object();
        ...
        obj=null;
    4,尽量少用静态变量
        class person
        {
            static Object obj=new Objecet();
        } obj 是Person类的静态变量,它的生命周期与Person类同步,在Person类不被卸载的情况下,Person类的Class对象会常驻内存,知道程序运行结束。
    5.避免在经常调用的方法、循环中创建Java对象。
    6,缓存经常使用的对象
        对于经常使用的对象,可以考虑把这些对象用缓存池保存起来。典型的缓存就是数据连接池,数据连接池里缓存了大量数据库连接,每次程序需要访问数据库时都可以直接取出数据库连接。
        使用HashMap进行缓存;直接使用某些开源的缓存项目,如OSCach、Ehcache.
    缓存设计本身就是一种以牺牲系统空间来换取运行时间的技术,不管是哪种缓存实现,都会使用容器来保存已用过的对象,方便下次再用。
    7,尽量不要使用finalize方法
    8,考虑使用SoftReference
        SoftReference是个很好的选择,当内存足够时,它的功能等同于普通引用,当内存不够时,它会牺牲自己,释放软引用所引用的对象。​
     
        
     
  • 相关阅读:
    mininet 多径传输网络仿真
    mininet 多径仿真双路由双网卡
    mininet仿真星型拓扑
    mininet 三个路由器两个终端的仿真
    mininet 两个路由器两个终端仿真
    mininet 仿真一个路由器两个终端
    mininet 两个交换机两个终端的仿真
    mininet 一个交换机两个终端的仿真
    ps命令
    df命令
  • 原文地址:https://www.cnblogs.com/happinessqi/p/3462800.html
Copyright © 2020-2023  润新知