博客
关于我
Java基础学习总结(127)——Java方法应该返回空对象还是null
阅读量:739 次
发布时间:2019-03-21

本文共 406 字,大约阅读时间需要 1 分钟。

在Java方法设计中,返回空对象(如空集合或空字符串)比返回null更加合适,因为这简化了客户端代码并增强了健壮性。建议采用空对象替代null,尤其是在集合和字符串中,而在返回逻辑上不存在对象的情况时则返回null,以保持方法行为的一致性。

  • 集合和数组:返回一个空的、长度为零的数组或集合,而非null。使用如Collections.emptyList()等不可变空集合,确保不会有意外修改。

  • 字符串:使用空字符串而非null,避免在字符串操作中出现意外问题。

  • 方法行为判断:方法名称暗示可能返回null时,如search()或get(),应返回null以保持一致性。

  • 设计约束:测定项目约束,确保方法行为不误导调用者,同时逐步修改代码,确保代码可维护性和功能不受影响。

  • 通过逐步修改和确保文档清晰,项目可以实现从null到空对象的转换,使代码更简洁且更安全。性能方面需实际测试后再优化,通常可读性优于性能考虑。

    转载地址:http://aefgz.baihongyu.com/

    你可能感兴趣的文章
    spring编程常见错误二 (学习笔记)
    查看>>
    P1364 医院设置
    查看>>
    P1614 爱与愁的心痛
    查看>>
    spring缓存注解@Cacheable、@CacheEvict、@CachePut使用
    查看>>
    P1865 A % B Problem
    查看>>
    P2158 [SDOI2008]仪仗队
    查看>>
    P2260 [清华集训2012]模积和
    查看>>
    P3203 [HNOI2010]弹飞绵羊 —— 懒标记?分块?
    查看>>
    P3950部落冲突
    查看>>
    P4313 文理分科
    查看>>
    SpringBoot中集成LiteFlow(轻量、快速、稳定可编排的组件式规则引擎)实现复杂业务解耦、动态编排、高可扩展
    查看>>
    SpringBoot中集成influxdb-java实现连接并操作Windows上安装配置的influxDB(时序数据库)
    查看>>
    P8738 [蓝桥杯 2020 国 C] 天干地支
    查看>>
    Package Header Cursor
    查看>>
    package,source folder,folder相互转换
    查看>>
    SpringBoot中集成Flyway实现数据库sql版本管理入门以及遇到的那些坑
    查看>>
    package.json文件常用指令说明
    查看>>
    SpringBoot中集成eclipse.paho.client.mqttv3实现mqtt客户端并支持断线重连、线程池高并发改造、存储入库mqsql和redis示例业务流程,附资源下载
    查看>>
    Padding
    查看>>
    paddlehub安装及对口罩检测
    查看>>