2022-03-23
常在河边走,哪有不湿鞋。Java工程师也是人,他们也会犯错误。但是千锋广州小编提醒大家有三个错误是万万不能犯的!工作中犯了这三个错误,今年的加薪就和你say goodbye了!快看看自己是不是中枪了。
忽略访问修饰符
虽然有点莫名其妙,但忘记Java中protected访问修饰符的作用域真的是许多人的家常便饭。那么protected访问修饰符的作用域有哪些呢?
· 可从子类访问protected字段、方法和构造函数。
· 能从同一包当中访问protected字段、方法和构造函数。
除此之外,包的作用域还可以帮助许多开发人员来编写自己的测试:可以从测试路径访问受保护的方法。所以忘记这个属性等同于在面试中表明自己从来没有编写过测试!
没有使用equals()
如果是Java工程师的你正在使用==(比较运算符)而不是调用equals()函数,这个习惯,必须要改!当想要比较两个String以及其他任何对象时,不要使用==。==只能解决两个操作数的对象引用(内存地址比较)的比较。
密码为字符串
作为一个安全问题,将用户提供的密码存储在字符串对象中是非常危险的,它使得字符串容易受到内存攻击。
使用char[]是最好的解决方法,就像JPasswordField和Password4j正在做的那样。但是假如是Web应用程序的话,那么大多数Web容器都将HttpServletRequest对象中的纯文本密码作为String传递。
字符串由Java虚拟机(JVM)(驻留)缓存并存储在PermGen空间(Java8之前)或堆空间中。出现这两种问题的话,那么在垃圾回收发生后才会删除掉缓存值:这就相当于无法得知特定值何时会从字符串池中删除,因为垃圾收集器的行为是不确定的。
而另一个存在的问题就是,String是无法更改的,所以不能清除它们。但实际上char[]是可更改的,同时可以在处理后删除(例如用0替换每个元素)。通过这个简单的技巧,攻击者只能在内存中找到全为零的数组而不是纯文本密码。
怎么样,这三个坑,作为Java工程师的你理解了吗?理解的话以后就一定不要再犯了哦!
动漫女孩官方版下载v1.0 安卓版
其它手游 38.4M
下载全民自行车特技手机版下载v1.1 安卓版
其它手游 262.0M
下载机甲勇者变形钢铁人版下载v1.0.1 安卓版
其它手游 10.2M
下载战争堡垒世界现代战争模拟游戏下载v 1.2 安卓版
其它手游 89.3M
下载奇妙小马美容化妆官方版下载v2.3 安卓版
其它手游 60.6M
下载吞噬进化游戏下载v1.0.0 安卓版
其它手游 41.4M
下载恐龙向前冲游戏下载v1.0.0 安卓版
其它手游 110.4M
下载成语拼拼拼红包版2022下载v3.6.4 安卓版
其它手游 32.2M
下载城市道路模拟驾驶游戏下载v300.1.0.3018 安卓版
下载
超级跑车游戏下载v1.0.0 安卓版
下载
真实巴士驾驶模拟器游戏下载v1.0 安卓版
下载
真实模拟地铁驾驶手机版下载v1.0 安卓版
下载
快刀忍者小游戏下载v1.0.0 安卓版
下载
超级万人迷手机版下载v1.0.1 安卓版
下载
转折的球球手机版下载v1.0.3 安卓版
下载
迷你城市大冒险游戏下载v1.0.1 安卓版
下载