php什么情况下使用final修饰方法,php – 什么时候应该使用“final”?

它阻止其他程序员做你不想要他们做的课程的东西.所以,不要发表评论,说“不要使用这个类来做XXX”,所以你可以设计它,以免他们以这种方式来改写它,并以这种方式滥用它.

编辑:由于请求了一个例子,我将描述一个你可能会发现这个关键字方便的情况…说你有一个类定义两个对象如何相互通信,比如一个监听器和通知器.监听器类必须显然允许继承,但是您可能希望使通知程序类final,以便必须在“has-a”关系中使用.这样,您可以从侦听器对象中获取有关其接收的消息的性质的假设.

否则,可以从该类继承,执行各种疯狂的东西,如扩展消息等等.如果你不想让其他程序员做到这一点,那么你可以让班级决赛.此外,这在广泛使用的公共API中可能会更有意义,因为它还允许其他程序员轻松了解哪些类可以进行子类化.

另一个例子 – 假设你有一个基于缓冲区的流处理器,并且在你的read()/ write()方法之内,你可以保存一些有关当前对象的状态的数据(即当前字节或任何内容).没有办法保证任何子类化这个类的任何人都可以在处理过程中调用super的方法 – 而且由于这样一个类可能只包含几个方法,所以最好只是把整个事情做成最后的而不是每个方法.这再次迫使人们使用类“has-a”而不是“is-a”,因此可以控制你期望代码执行的方式.

我会同意你的看法,因为整个班级的决赛大概是你需要在蓝色的月亮中做的事情,但是如果你选择行使这个功能,那么这个功能很好.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值