一般在调用某个方法时,不要求形参的类型,但是要求形参具有某种方法;
这时候,可以将形声明为接口类型的,只要是该接口的实现类,都能传递进来,并且能调用被该实现类重写了的方法,且这些方法的返回类型为任意,不限于void;
恶俗的理解:我不在乎你you, 属于哪种人,但是必须 重写 boolean 有钱()的方法 和 int 给我钱()的方法
只要你实现了 "我有钱,而且能给你钱" 的接口 You implements "我有钱,而且能给你钱"
You you = new You();
if ( you.有钱() ) {
//这样我才能
void 花钱( you.给我钱() ){
...
};
};