在面向对象编程中,null 的最佳替代方案是什么?

2024-03-04

我觉得不满意在面向对象编程中。 有其他解决方案吗? 我不喜欢避免它this way http://en.wikipedia.org/wiki/Null_Object_pattern either.

最好的处理方法是什么?


Java 8 有新的Optional http://docs.oracle.com/javase/8/docs/api/java/util/Optional.html输入我认为您要问的内容

一个容器对象,可能包含也可能不包含非空值。如果存在一个值,isPresent()将返回 true 并且get()将返回该值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在面向对象编程中,null 的最佳替代方案是什么? 的相关文章

  • Cakephp:将 AppController 抽象到另一个层次,可能吗?

    我想知道是否可以在 AppController 和我的应用程序的其他控制器之间添加另一个抽象控制器 这样我的控制器 例如UsersController 扩展了 SecureController SecureController 扩展了 Ap
  • JavaScript“可写”属性描述符如何工作?

    为什么 JavaScript 可写 属性描述符不禁止任何属性更改 例如 var TheDarkKnight Object create Superhero name value Batman writable false TheDarkKn
  • 如何在课外使用$this?

    我们可以使用 this课外 请看下面的例子
  • php oop 如何使用属性和方法形成类

    我是 php oop 的新手 我对类有一些想法 但我仍然不知道如何在创建的对象中使用它的属性和方法 我需要了解下面报告的代码是否正确 如果不正确我做错了什么 我假设我有一个可以为我做任何事情的课程 我们称之为 Class myClass 现
  • super 在 python 中真正做什么[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我刚刚读过方法解析顺序 http python history blogspot com 2010 06 method resolution
  • 动态添加变量名称值对到 JSON 对象

    我有一个充满 ips 的 json 对象 例如 var ips 然后我将 ip 对象添加到该对象 如下所示 ips ipID 然后我需要向每个 ip 添加动态 变量名称值对 所以我使用这样的代码 var name var value var
  • VBScript 中的对象/类字典

    vbscript 中是否可以有对象 类的字典 例如 Class employeeclass Public first last salary End Class Dim employeedict Set employeedict Creat
  • 如何在 jQuery 中检查 null 对象

    我正在使用 jQuery 我想检查页面中是否存在某个元素 我写了以下代码 但它不起作用 if btext i null alert btext i text btext i text Branch i 如何检查元素是否存在 检查jQuery
  • PowerShell函数不会返回对象

    我有一个简单的函数来创建一个通用列表 function test genericType Type System Collections Generic List 1 type typedParameters System String c
  • Java:如何复制对象数组?

    现在 我有一个 Point 对象数组 我想制作一个COPY该数组的 我尝试过以下方法 1 Point temp mypointarray 2 Point temp Point mypointarray clone 3 Point temp
  • 用于生成 C++ 代码轮廓/图的工具 - 有这样的东西吗? [复制]

    这个问题在这里已经有答案了 我需要深入研究用 C 编写的软件组件并对其进行一些修改 我幻想生成一些代码映射 它将显示类之间的关系并引导我完成方法的流程 调用图 有这个工具吗 几年前 我使用 Rational Rose 建模工具 该工具具有对
  • Object.assign 方法不绑定“this”

    我正在尝试绑定this变量到一个新对象 function Parent sub component constructors this components node function this name jordan subcompone
  • 如何让枚举存储每个条目的额外信息

    我有一组包含相关信息的项目 这些项目是由我 程序员 定义的 用户不需要更改它们 它们永远不需要根据配置进行更改 并且它们唯一可能更改的时间是在我的应用程序的未来版本中 我事先知道这些项目应该有多少 以及它们的确切数据是什么 枚举是一种很棒的
  • 如何使用类中的常量作为 php 函数中的参数定义?

    我有一堂课 class FetchMode const FetchAll 0 const FetchOne 1 const FetchRow 2 和一个函数 function getRecordSet FetchMode FetchMode
  • 为什么.NET中的每个类都继承自Object?

    我不明白 为什么他们需要一个共同的基础 这个问题预设了一个谎言 他们不need一个共同的基础类型 这个选择并不是出于必要 这是出于为客户提供最佳价值的愿望 当设计类型系统或任何其他相关问题时 有时您会遇到决策点 您必须决定 X 或非 X 公
  • 为什么 'self.self' 在 swift 中编译并运行?

    昨天我回顾了 Swift 中的一段代码 其中包括这一行 self self someProperty 这让我很惊讶 因为这个词self被保留并用作对当前实例的引用 起初我用其他语言检查了这种现象 但都给出了错误 这并不奇怪 但是 为什么它能
  • 如何将对象转换为传递给函数的类型?

    这不会编译 但我想做的只是将对象转换为传递给函数的 t public void My Func Object input Type t t object ab TypeDescriptor GetConverter t ConvertFro
  • 我可以在 Laravel 5.2 中创建一个继承自 User 的新类吗?

    我对 Laravel 还很陌生 使用的是迄今为止的最新版本 5 2 因此我遇到了以下困境 我知道 Laravel 附带了一个User开箱即用的类 但我想开发一个系统 在其中我可以有另外两种类型的用户 称为Researcher and Adm
  • 在 Ruby 中跨多个类实例记忆数据的好方法是什么?

    考虑 生成数据的对象的许多实例 如果每次运行只生成一次该数据 那就太好了 class HighOfNPeriods lt Indicator def generate data indicator data DataStream new 0
  • 如何为抽象工厂创建的类设置特定属性?

    是否可以让具体工厂使用抽象工厂模式为其创建具有特定类型参数的具体类 或者由各自的具体工厂创建的不同具体类是否需要具有相同的字段 例如 在下图中 您将如何使用客户端 应用程序 给出的不同参数集来实例化 WinButton 和 OSXButto

随机推荐

  • 即使配置 SSL 属性后,Spring RMQ 侦听器也始终使用 PLAIN 身份验证

    我有一个 Spring Boot 应用程序 我正在尝试将侦听器配置为已有的队列 以下是我在我的配置中配置的application yml文件 我还用注释注释了我的配置类 EnableRabbit和听众 RabbitListener参考 sp
  • 即使方向是横向,Android也会加载drawable而不是drawable-land?

    我有一个启动屏幕 在主屏幕之前显示图像几秒钟Activity启动 它有一个纵向版本 drawable hdpi splash 和一个横向版本 drawable land hdpi 启动画面设置方向onCreate 我的问题 如果我将平板电脑
  • 如何检测CSS3调整大小事件

    CSS3 resize 属性可以分配给任意元素 我正在寻找一种方法来检测 div 上的此类调整大小 我不介意它目前仅在 Firefox 中工作 div resize horizontal overflow hidden 不幸的是 onres
  • 为什么我在制作 Spring 项目时会收到​​ not Exposure to the weaver 警告?

    当我制作 Spring 项目时 我似乎收到了很多这样的警告 该项目使用编译时编织和各种 Spring 注释 例如 Transactional Autowired 和 Configurable 我有三个问题 它们是什么 有什么效果 我应该关心
  • 当我结合 UIPanGestureRecognizer 和自动布局时,我的 UIViews 搞砸了

    当我沿着圆形轨迹拖动手指时 我想要一个球来跟踪我的手指 以适应 iPhone 或 iPad 上每个允许的设备方向 当设备旋转时 视图似乎正确居中 但球不会停留在圆周上 并且当我拖动它时 它似乎会去任何地方 EDIT 马丁 R的回答 http
  • 如何下载特定谷歌云“服务”的代码

    This doc https cloud google com appengine docs python tools downloading source code显示下载我在应用程序引擎中拥有的应用程序源代码的命令 appcfg py
  • Spring MVC 在表单中选择值:表单验证错误后选择

    我的验证表单有问题 该表单有很多不同的字段 输入文本字段 选择选项 多重选择选项 我已经使用 Spring Security 开发了有关验证表单的所有逻辑源代码 但是当验证表单失败 例如 用户没有填写任何内容 并再次重新加载表单时 所有输入
  • 没有开发者许可证/应用商店的 iOS 应用

    我是 iPhone 开发新手 想知道是否有一个好的 简单的指南可以让我在不加入开发者计划的情况下在越狱手机上安装 iOS 应用程序 基本上 我不知道我是否有时间学习我需要学习的所有内容 但我想开始看看它会带来什么结果 一旦我有了一些像样的东
  • 为什么我的可转换核心数据属性不使用我的自定义 NSValueTransformer?

    我有一个核心数据应用程序 具有相当简单的数据模型 我希望能够将 NSImage 实例作为 PNG Bitmap NSData 对象存储在持久存储中 以节省空间 为此 我编写了一个简单的 NSValueTransformer 将 NSImag
  • 从日期中提取年中的天数

    我有一个这样的日期列表 library lubridate my dates lt c 03 01 2006 28 01 2006 12 01 2008 02 02 2006 03 03 2008 my dates lt dmy my da
  • 在密码框的某些事件中显示密码字符

    我正在开发一个 Windows Phone 应用程序 我要求用户登录 在登录页面上 用户必须输入密码 现在我想要的是给用户一个复选框 选择该复选框后应显示密码的字符 我没有在密码框中看到任何显示密码字符的属性 请建议一些方法来做到这一点 不
  • 调试和分析网络工作者

    我正在运行计算 例如网络工作者的寻路 这可能需要几秒钟 我想优化它 对于我当前的代码来说 Chrome 似乎快了大约 3 倍 但是时间花在哪里或者为什么我不知道 一般来说 如何调试 Web Worker 如何分析网络工作者 火狐和 Chro
  • 使用 jQuery 隐藏跨度

    即使已经嵌入图像 如果没有文本 如何隐藏跨度 基本上每个跨度中都嵌入了很少的网页图标和视频图标 访问网站 webicon 查看视频 videoicon 因此 如果 没有链接文本 嵌入WEBICON 包括图像图标在内的整个内容都应该隐藏 di
  • 如何让 Backbone.ajax 返回成功数据

    我试图让 Backbone ajax 返回集合 集合 我需要程序的另一部分的模型 我想让数据在与 ajax 方法相同的级别上可用 Backbone ajax dataType jsonp url https api twitter com
  • 如何通过字符串或整数获取枚举值

    如果我有枚举字符串或枚举 int 值 如何获取枚举值 例如 如果我有一个枚举如下 public enum TestEnum Value1 1 Value2 2 Value3 3 在某些字符串变量中 我的值 value1 如下 string
  • 我想找到线程消息并使用 slack-api 删除它

    可以通过以下方法找到私信或私信im history and converstation history 如何查找话题消息 我想找到线程消息并删除它们 查找话题消息 您需要使用conversations history https api s
  • jQuery 验证插件 - 如何在页面加载时显示标签

    填写输入后 该插件会插入一个标签 但是我希望在页面加载时插入所有标签 任何想法都会很棒 谢谢 该插件的链接在这里 http jqueryvalidation org documentation http jqueryvalidation o
  • 如何计算列表中点的距离?

    我有两组列表 A 和 O 它们都有来自 x y z 坐标的点 我想计算A点和B点之间的距离 我使用了for循环 但它只给了我一个结果 它应该从结果中给出 8 个数字 我很感激有人能看一下 这是我的项目的最后一步 Ax 232 34 233
  • 如何设置 Eclipse 工作区机制来共享设置?

    我该如何配置这个工具 我已经在 Eclipse 环境中设置了首选项 底部图标显示工作区机制正常 但是 当我打开工作区或创建新工作区时 没有任何反应 没有任何首选项 如何设置工作区机制 以及如何告诉工作区使用另一个工作区的设置 默认情况下 工
  • 在面向对象编程中,null 的最佳替代方案是什么?

    我觉得不满意在面向对象编程中 有其他解决方案吗 我不喜欢避免它this way http en wikipedia org wiki Null Object pattern either 最好的处理方法是什么 Java 8 有新的Optio