package car;public abstract class che{ //车类
String cName;
String cCloro;
String cPai;
che(String N,String C,String P)
{
this.cName = N;
this.cCloro = C;
this.cPai = P;
}
abstract void Run();
abstract void Laba();
}
package car;public interface chezai { //接口 载人的方法
public void zai();}package car;public class paoche extends che implements chezai { paoche(String N, String C, String P) {
super(N, C, P);
// TODO 自动生成构造函数存根
} void Laba() {
// TODO 自动生成方法存根
System.out.println("这辆车有黄色的喇叭");
} void Run() {
// TODO 自动生成方法存根
System.out.println("这辆车可以跑");
} public void zai() {
// TODO 自动生成方法存根
System.out.println("本车只能载2个人");
}
} //人类 用来买车
package car;public class pero {
String name;
pero(String n)
{
this.name = n;
}
che mai(String n)
{
if(n=="跑车")
{
return new paoche("保时捷","白色","鄂A9001");
}
else if(n=="拖拉机")
{
return new tuolaji("解放","蓝色","鄂A9002");
}
else
{
return null;
}
}}
package car;public class text { /**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
pero p = new pero("小明");
System.out.println(p.name);
che c = p.mai("跑车");
System.out.println(c.cName);
System.out.println(c.cCloro);
System.out.println(c.cPai);
c.zai() //这个方法调用不出来
}}我点那个 c.zai() 这个方法为什么调用不出来呢? 跑车类不是继承了che类 实现了接口chezai 里面的 zai() 这个方法么? 为什么这里的c.zai() 调用不出来呢? 新人请多指点下...
String cName;
String cCloro;
String cPai;
che(String N,String C,String P)
{
this.cName = N;
this.cCloro = C;
this.cPai = P;
}
abstract void Run();
abstract void zai(); abstract void Laba();
}
加上红字
字符串比较要用equals()方法
c是一个车类型的,其中没有zai()这个方法声明啊,怎么可能行吗
建议把不要chezai这个接口,把zai()声明放到che这个abstract类里面就可以了
你把paoche上传给了che,che没有zai()方法。