Polymorphism via Interfaces ■例如:建立一个实现 Speake接口的类Dog和类 Philospher,那么同一个接口引用变量可以在某时刻 指向hi1 osher对象,之后某时刻又可以指向Dog类 对象。 In the following code, the first call to speak invokes one version and the second invokes another: Speaker guest new Philospher o)i guest. speak()i guest new Dog()i guest. speak()i
Polymorphism via Interfaces ◼ 例如:建立一个实现Speaker接口的类Dog和类 Philospher,那么同一个接口引用变量可以在某时刻 指向Philospher对象,之后某时刻又可以指向Dog类 对象。 ◼ In the following code, the first call to speak invokes one version and the second invokes another: Speaker guest = new Philospher(); guest.speak(); guest = new Dog(); guest.speak();
■当使用接口引用变量时,只能调用定义在接口中 的方法,即使接口引用变量所指向的对象还有其 他的方法,也不能调用。 ■接口名也可以用作方法参数的类型,使得任何实 现同一接口的实现类对象都可以作为参数传递给 方法。 Public void salt(Speaker current) current speak(;
◼当使用接口引用变量时,只能调用定义在接口中 的方法,即使接口引用变量所指向的对象还有其 他的方法,也不能调用。 ◼ 接口名也可以用作方法参数的类型,使得任何实 现同一接口的实现类对象都可以作为参数传递给 方法。 ◼ Public void sayIt (Speaker current) ◼ { ◼ current.speak(); ◼ }