接口类的一大波问题,关于回调问题
TyresStandrad接口用于声明17寸轮胎的速度级别及名称,即其包括常量size、方法turnWheel()和方法getTyresName()
设计一个Car类,该类有一个useTyres(TyresStandrad tyres)方法,该方法的参数tyres是TyresStandrad接口类型,该参数可以存放任何实现TyresStandrad接口的类的对象的引用,并回调类重写的接口方法显示轮胎转速和轮胎名称
定义Michelin和Dunlop两个实现了接口TyresStandrad的类
在测试类中获取不同品牌使用17寸轮胎的汽车类的对象,显示其轮胎转速和轮胎名称
interface TyresStandrad
{
final int size=17;
int rank;
String name;
String turnWheel();
String TyresName();
}
class Michelin implements TyresStandrad
{
public String turnWheel()
{
return "This tyre's rank is 5";
}
public String TyresName()
{
return ",and it's nama is Michelin ";
}
}
class Dunlop implements TyresStandrad
{
public String turnWheel()
{
return "This tyre's rank is 4";
}
public String TyresName()
{
return ",and it's nama is Dunlop ";
}
}
class Car implements TyresStandrad
{
public String useTyres(TyresStandrad tyres)
{
return tyres.turnWheel()+ryres.TyresName();
}
}
class ShowTyres
{
public static void main(String[] args)
{
Car a=new Car();
a.tyres=new Dunlop();
System.out.println(a.tyres.useTyres());
}
}
TyresStandrad 类中的rank和name属性实在实现接口类中用super赋值还是直接在重写的方法里return 他的属性(就像我程序里写的那样),不过直接return的话就好像没必要在TyresStandrad 类中定义rank和name了吧,但是我这样写是报错的,这一点不太明白,希望大神帮我理理思路
还有就算 “该类有一个useTyres(TyresStandrad tyres)方法,该方法的参数tyres是TyresStandrad接口类型,该参数可以存放任何实现TyresStandrad接口的类的对象的引用,并回调类重写的接口方法显示轮胎转速和轮胎名称”这句话里说的定义一个方法回调类重写的接口方法是什么意思?
class Car implements TyresStandrad
{
public String useTyres(TyresStandrad tyres)
{
return tyres.turnWheel()+ryres.TyresName();
}
}
class ShowTyres
{
public static void main(String[] args)
{
Car a=new Car();
a.tyres=new Dunlop();
System.out.println(a.tyres.useTyres());
}
}
是这种意思吗?
回调这里学的不太好,大神可以留下点经验吗?