如何正确定义接口的返回值(boolean/Boolean)类型及命名(success/isSuccess)

一般情况下,我们可以有以下四种方式来定义一个布尔类型的成员变量:

    boolean success;
    boolean isSuccess;
    Boolean success; //推荐写法
    Boolean isSuccess;

 

 

success 还是 isSuccess

在阿里巴巴Java开发手册中关于这一点,有过一个『强制性』规定:

-w656

复制代码
public class Model1 {

    boolean success;

    public boolean isSuccess() {
        return success;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }
}
复制代码
复制代码
public class Model2 {

    boolean isSuccess;

    public boolean isSuccess() {//如果严格按照规范定义的话,getter方法应该叫isIsSuccess。但是很多IDE都会默认生成为isSuccess。
        return isSuccess;
    }

    public void setSuccess(boolean success) {
        isSuccess = success;
    }
}
复制代码
复制代码
public class Model3 {

    Boolean success; //推荐写法

    public Boolean getSuccess() {
        return success;
    }

    public void setSuccess(Boolean success) {
        this.success = success;
    }
}
复制代码
复制代码
public class Model4 {

    Boolean isSuccess;

    public Boolean getSuccess() {
        return isSuccess;
    }

    public void setSuccess(Boolean success) {
        isSuccess = success;
    }
}
复制代码

以上代码的setter/getter是使用Intellij IDEA自动生成的,仔细观察以上代码,会发现以下规律:

  • 基本类型自动生成的getter和setter方法,名称都是isXXX()setXXX()形式的。
  • 包装类型自动生成的getter和setter方法,名称都是getXXX()setXXX()形式的。

 

 所以,在定义POJO中的布尔类型的变量时,不要使用isSuccess这种形式,而要直接使用success!

 

Boolean还是boolean

在阿里巴巴Java开发手册中,对于POJO中如何选择变量的类型也有着一些规定:

所以,尽量使用包装类型。

 

总结

本文围绕布尔类型的变量定义的类型和命名展开了介绍,最终我们可以得出结论,在定义一个布尔类型的变量,尤其是一个给外部提供的接口返回值时,要使用success来命名,阿里巴巴Java开发手册建议使用封装类来定义POJO和RPC返回值中的变量。但是这不意味着可以随意的使用null,我们还是要尽量避免出现对null的处理的。

 

 

阿里巴巴Java开发手册:https://caoye.lanzous.com/iby7opg

参考文章来源:http://hollischuang.gitee.io/tobetopjavaer/#/basics/java-basic/success-isSuccess-and-bollean-Bollean

posted @   草木物语  阅读(7534)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示