首先,我的无处不在的语言是PHP,我正在考虑学习Java。接口:利用
所以让我分两个密切相关的部分我的问题。
这里是第一部分。
说我有一个域模型类。它有一些getter,setter,一些查询方法等。有一天,我想有一个可能性来比较它们。所以它看起来像:
class MyEntity extends AbstractEntity
{
public function getId()
{
// get id property
}
public function setId($id)
{
// set id property
}
// plenty of other methods that set or retrieve data
public function compareTo(MyEntity $anotherEntity)
{
// some compare logic
}
}
如果它本来的Java,我应该已经实现了Comparable
接口。但为什么?多态性? Readbility?或者是其他东西?如果是PHP - 我应该为自己创建Comparable
界面吗?
所以这里是第二部分。
我的同事告诉我,为Java的每个行为方面创建一个接口是Java中的一条经验法则。例如,如果我想提出这个对象的字符串,我应该是:由类似implements Stringable
,凡在PHP Stringable
的情况是这样的行为:
interface Stringable
{
public function __toString();
}
那真的是一个经验法则?这种方法有什么好处?这是否值得在PHP?在Java中?
我认为这个问题似乎更适合programmers.stackexchange.com – 2012-04-03 20:10:04