.NET 和java定义的抽象类不同.NET定义的可以直接运行,如下面例子 但放到java里编译不能通过
public abstract class clsTest
{
public int GetInt()
{ return 1; }
}
使用时:
int i = clsTest.GetInt();
而一般的类要用:
clsTest t = new clsTest();
int i = t.GetInt();
如何把这个修改成java的抽象类
public abstract class clsTest
{
public int GetInt()
{ return 1; }
}
使用时:
int i = clsTest.GetInt();
而一般的类要用:
clsTest t = new clsTest();
int i = t.GetInt();
如何把这个修改成java的抽象类
那你就把GetInt改成static方法就是了。
public static int GetInt()
{ return 1; }
}
还是抱错误?
xception in thread "main" java.lang.Error: Unresolved compilation problem: at clsTest.GetInt(Class1.java:32)
at Class1.main(Class1.java:47)
bstract class clsTest{
public static int GetInt()
{ return 1; }
public abstract void eat();
}class clsTest2 extends clsTest{
public void sleep(){
System.out.println("Dog sleep.");
}
public void eat(){
System.out.println("Dog eat.");
}}这里奇怪的哦是
int i ;
clsTest k=null;
k=new clsTest2();
k.GetInt();-------对的
k.sleep();---------错的 ,提示
xception in thread "main" java.lang.Error: Unresolved compilation problem:
The method sleep() is undefined for the type clsTest at Class1.main(Class1.java:101)