首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

关于抽象类,继承,下转型的使用

2012-08-25 
关于抽象类,继承,上转型的使用abstract class A{public abstract void f(int x)public abstract void g(i

关于抽象类,继承,上转型的使用
abstract class A{
  public abstract void f(int x);
  public abstract void g(int x,int y);
  public abstract double h(double x);
}

class a extends A{
  public void f(int x){
  System.out.println("在a中,f()");
  }
  public void g(int x ,int y){
  System.out.println("在a中,g()");
  }
  public double h(double x){
  System.out.println("在a中,h()");
  return 0;
  }
}
public class f2{
  public static void main(String args[]){
  A p; 
  p=new a();  
  p.f(1);
  p.g(1,1);
  p.h(1);
  }
}
可以编译,运行卜了.求解

[解决办法]
你的a跟A可能会有点问题,把a改成别的字母吧
[解决办法]
我还以为是java区分大小写是可以的,试了一下,还真不行

Java code
abstract class A{  public abstract void f(int x);  public abstract void g(int x,int y);  public abstract double h(double x);}class B extends A{  public void f(int x){  System.out.println("在B中,f()");  }  public void g(int x ,int y){  System.out.println("在B中,g()");  }  public double h(double x){  System.out.println("在B中,h()");  return 0;  }}class f2{  public static void main(String args[]){  A p;    p=new B();     p.f(1);  p.g(1,1);  p.h(1);  }}
[解决办法]
Windows 文件系统的文件名不区分大小写,编译之后A跟a生成的.class文件只能剩一个,所以执行的时候报找不到class文件错误。

热点排行