关于阿里为什么boolean类型变量命名为什么禁用is开头名

首先介绍一下javaBean关于getter和setter方法命名的规范,可能大家就能猜到为什么

public <PropertyType> get<PropertyName>();
public void set<PropertyName>(<PropertyType> a);

关于boolean类型又有专门的一套命名规则

public boolean is<PropertyName>();
public void set<PropertyName>(boolean m);

大家可以看到,boolean类型的变量getter方法命名是is开头,因此在开发过程中会遇到种种问题
举个例子:


public class ArrayInit {
	
	//private boolean isSuccess;
	  private boolean Success; 
  
	/*public boolean isSuccess() {
		return isSuccess;
	}

	public void setSuccess(boolean isSuccess) {
		this.isSuccess = isSuccess;
	}
*/
 	 
	public boolean isSuccess() {
		return Success;
	}

	public void setSuccess(boolean success) {
		Success = success;
	}

通过IDE自动生成的getter方法,Success和isSuccess是相同的
这样的话在javaBean序列化的时候就会有严重的问题
引用一个阿里巴巴java开发手册的规定:
在这里插入图片描述
不过,用Boolean的话不存在上述问题,他的getter和setter方法还是第一种正常的方法,
就是存在null的情况,在代码中我们应该尽量避免null的情况而选择boolean。它的默认值是false,然而万事没有绝对,false的默认值有时候并不是我们想要的,所以还是要视情况而定

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值