如何学好面向对象?类写法的困惑
程序员文章站
2024-02-04 23:39:46
...
使用类中方法的两种方式,哪一种会更好一点儿呢?
请问这两种写法,哪种更好?
不知道自己是否有些钻牛角尖了
回复内容:
使用类中方法的两种方式,哪一种会更好一点儿呢?
请问这两种写法,哪种更好?
不知道自己是否有些钻牛角尖了
这两段代码只在封装层次上有区别,而这个是由业务需求决定的。
如果只需要暴露第二个
function
作为接口使用,那就选第二种,而且注意func1()
应该是private
。
if($a)
应该是 if($this->a)
吧
如果经常用到对a
的判断,可以增加一个 func2()
。 func2()
可以把对b
的赋值也封装进去。
有两个问题:
1. b
的属性可否改为protected
或private
2. 如果func1()
不需要被类外调用,需要改成protected
或private
如果单从你这个例子的话,感觉第二个好一点,因为只暴露了一个方法。
if($a)应该是 if($this->a)!!!你的写法就有问题!!!错误的写法!!!