Jen*_*nix 2 java android interface
说,我有以下代码:
interface IAAA {
void aaa();
}
interface IBBB extends IAAA {
void bbb();
}
class MyClass implements IAAA, IBBB {
public void bbb() { }
public void aaa() { }
}
Run Code Online (Sandbox Code Playgroud)
是否有实现的任何好处IAAA的MyClass?正如你所看到的,IAAA已经被扩展IBBB,并MyClass正在实施两个IAAA和IBBB.似乎IAAA从中移除MyClass不会影响任何事情.
我之所以问这个愚蠢的问题,是因为我在Android开源项目中经常看到这种模式,有时甚至在标准中也是Java API如此ArrayList.
我想谈的一个例子是SpannableStringBuilder.
Spanned接口扩展CharSequence接口.
Spannable接口扩展Spanned接口.
Editable接口扩展CharSequence和Spannable接口.
SpannableStringBuilder类实现CharSequence,Spannable,Editable界面恢复.
我真的不明白.这样做有什么意义?何必?