数据合法性检查java_数据的合法性检测 - love fish大鹏一曰同风起,扶摇直上九万里 - BlogJava...

本文讨论了数据类在Java中进行数据合法性检查的重要性,指出仅仅在构造方法中检查是不够的,应确保在对象使用过程中也能防止非法数据的注入。建议在set方法中进行检查,并在构造方法中通过set方法设置字段值,以确保代码的健壮性。此外,即使数据来源于其他对象,也应进行合法性检查,避免潜在风险。最后,提倡创建专门的合法性检查类来避免重复代码,提高代码可维护性。
摘要由CSDN通过智能技术生成

一般的数据类都应该有自己的数据合法性检查,如一个Person类,它的年龄属性是int型的,但是如果给它赋值10000则为不合法,一个人不可能活那么长时间。因此需要在创建该类的对象时必需对其进行合法性检查,若构造方法传入的是非法数据,则不让其创建该对象,并抛出异常。也许大多数人认为只需要对构造方法传入的参数进行合法性检查即可。如下所示:

class ValidClass

{

int dataValid1;        String dataValid2;

public ValidClass(int i, String str)

{

check(int i, String str);

dataValid1 = i;

dataValid2 = str;

}

void check(int i, String str)

{

if(i >100 && i <= 0) throws new RuntimeException("message");

if(str == "str") throws new RuntimeException("message");

}

void setDataValid1(int dataValid1)

{

this.dataValid1 = dataValid1;

}

}

实际上这种合法性并不可靠,这样只是保证了在构造方法中传入的数据是合法的,但是不能保证程序员在使用该对象时能传入合法的数据。如下程序代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值