java性能优化总结(1):基础篇

从走上工作岗位到现在已经有5年多了,在java的技术道路上也走了这么久了,自己也该好好总结一下。总结的过程也是梳理自己所掌握知识体系的过程。本篇博客适合有一定java基础的人观看。下面咱们就开始吧。

对象

对象,大家都知道java是面向对象的语言。在java中对象是如何创建的呢?在java中对象的创建方式有以下5种方式:

  • 通过new关键词在堆中产生对象
  • 通过Clone()方法创建对象
  • 通过字节流反序列化生成对象
  • 使用Class类的newInstance方法
  • 使用Constructor类的newInstance方法
    这5种方式中一般new是我们使用频率最高的,也是最简单的一种。这个不用多说。对于clone()方法一般使用的频率比较低。现在有这样一个场景:对象A已经被创建,此时想要创建对象B,对象B中的属性以及属性值与对象A存在大部分相同,此时可以通过clone方法来实现对象B的创建以及自动赋值。这样做简单方便,简化了很多代码。对于第三种方式,反序列化来创建对象一般用于对象的持久化或者网络通信中。对于最后2种方式,实质都是一样的,底层都是通过java的reflect机制实现的。

其他基础优化

if…else…语句也是最常用的,对于多条件判断时,要尽量使用三目判断语句,这样代码更加简洁。例如:

 public static void main(String[] args){
        int i = 2;
        int flag = 0;
        if (i==3){
            flag = 1;
        }else {
            flag = 2;
        }
        flag = i==3?1:2;
    }

看到代码就知道,最后一行三目运算符简洁。
另外对于boolean类型的判断不要这样去写:if(b==true),直接写成if(b)就ok。
除了if判断语句外,对于工具类中的方法最好使用static,如果一个类或方法不想被继承或override,则使用final。
对于变量,尽量使用局部变量,因为局部存在栈中,其生命周期只存在于方法的开始调用与结束,或者入栈与出战之间。


趁着下班抽点时间来写写,希望与他人分享交流,对于性能优化,下面还得继续写,今天到此结束。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值