五大原则让你的代码不再受bug的困扰
来源:互联网 发布:球员对比的软件 编辑:程序博客网 时间:2024/05/21 22:49
牢记以下五项基本原则,能够帮助大家尽可能减少代码中的bug。
Java编程语言的人气自然无需质疑,从Web应用到Android应用,这款语言已经被广泛用于开发各类应用及代码中的复杂功能。
不过在编写代码时,bug永远是困扰每一位从业者的头号难题。本文我们将分享五项java编程基本元原则帮助大家尽可能减少代码中的bug,希望大家能轻松地减少Java开发中的bug数量。
原则一:不要依赖初始化
在Java中,开发者常常依赖构造函数进行对象初始化。不过这其实是一种常见误区。我们完全可以在无需调用构造函数的情况下,通过多种方式实现对象分配。
下面来看几种常用方式:
(1)大家可以将所有变量声明为私有。要访问该类外的对象,大家可使用GET与SET方法。
(2)对每个对象,编写一个新的私有boolean变量并对其进行初始化。
(3)编写一个非构造函数类,其将确保每个对象会在接受调用之前进行初始化。
原则二:保护类、方法与变量
在代码当中,类、方法与变量分为私有与公共两类。私有类无法轻松进行访问,这使其成为代码中的高安全性点。不过公共方法与变量则易于方法,也因此常常成为攻击突破口。因此,请尽可能限制其范围。
请记住,只在必要时开放类、方法与变量。
原则三:永远对范围进行预定义
大多数开发者完全依赖于软件包自身的范围设定,事实上我们应当坚持对代码范围进行预定义。很多类本身并非完全封闭,这意味着攻击者能够对其施以攻击。黑客可以利用单一漏洞插入自己的类,进而从代码中提取敏感信息。JVM在默认情况下即不会封闭,不过允许大家在该软件包内进行类封闭。
原则四:避免使用内部类
一般来讲,开发者会在同一软件包内其它类需要时使用内部类。这些内部类通常可供同一软件包内全部类进行访问,由此可能引发的问题在预定义代码范围部分已经提到。因此,同样请仅在必要时使用内部类。
原则五:确保类不可克隆
Java提供一项功能,用于在需要时对自有类进行克隆。然而这项功能往往被黑客所利用,其能够使用java.lang.Cloneable从代码中复制代码实例并窃取必要信息。
要解决这个问题,大家只需要在代码中的每个类中添加以下代码。
public final void clone()throws
java.lang.CloneNotSupportedException {
thrownewjava.lang.CloneNotSupportedException();
}
如果大家希望自己的class具备可克隆性,同时仍然尽可能避免安全问题,那么则可自行定义克隆方法,并将其设置为final。
如果大家在自己的某个超类中使用了nonfinal克隆方法,则请按以下方式定义该方法:
public final void clone()
throwsjava.lang.CloneNotSupportedException{
super.clone(); }
当然,没人能100%掌握Java的全部奥秘,但关注上述编程原则及实践,能够帮助大家更为有效地降低代码内bug数量。
WEB前端学习交流群21 598399936
- 五大原则让你的代码不再受bug的困扰
- 五大原则让你的代码不再受bug的困扰
- 五大原则让你的代码不再受bug的困扰
- 五项最佳实践让您的Java代码免受bug困扰
- 让指针不再困扰你
- 让指针不再困扰你
- 让指针不再困扰你
- 让指针不再困扰你
- 让指针不再困扰你
- 让c语言指针不再困扰你
- 让你的地图人人都想看——五大制图设计原则
- 绩效管理的五大困扰
- javapoet-让你不再书写无聊的代码(一)
- 让你半途而废的五大凶手
- Json解析,让你不再困扰(非常详细)
- 让你的Toast不再单调
- 如何让你的GridView不再滚动
- 11个让你代码整洁的原则
- Java使用File的的delete()方法删除文件
- iOS 开发 时间与时间戳的相互转化
- 注册码清单
- Redis中常用命令
- input输入框聚焦状态样式
- 五大原则让你的代码不再受bug的困扰
- C++笔记
- android 工程,点击图片,在屏幕显示
- ubuntu 14.04 下通过apt-get 安装jdk
- extjs4 combobox 多选与赋值 2017.1.10
- Oracle SQL增加、删除、更改表中的字段名
- 简析Android安装文件
- 我的第一篇博客--ScrollView中嵌套自定义ListView显示不全的解决方案
- 一、Web Service概述