public class Max extends MaxTest
{
public void intCompare(int a,int b)
{
if (a<b)
{
System.out.println(a);
}
else
System.out.println(b);
}
public void intCompare(double c,double d)
{
if (c<d)
{
System.out.println(c);
}
else
System.out.println(d);
}
public static void main(String []args)
{
Max m = new Max();
m.intCompare(5,6);
m.intCompare(5.0,6.0);
}
}
public abstract class MaxTest
{
abstract void intCompare();
}
大家请看看这个程序
子类也要命名为抽象的吗?
编辑出现下面错误
Max.java:29: 类 MaxTest 是公共的,应在名为 MaxTest.java 的文件中声明
Max.java:1: Max 不是抽象的,并且未覆盖 MaxTest 中的抽象方法 intCompare()
{
public void intCompare(int a,int b)
{
if (a<b)
{
System.out.println(a);
}
else
System.out.println(b);
}
public void intCompare(double c,double d)
{
if (c<d)
{
System.out.println(c);
}
else
System.out.println(d);
}
public static void main(String []args)
{
Max m = new Max();
m.intCompare(5,6);
m.intCompare(5.0,6.0);
}
}
public abstract class MaxTest
{
abstract void intCompare();
}
大家请看看这个程序
子类也要命名为抽象的吗?
编辑出现下面错误
Max.java:29: 类 MaxTest 是公共的,应在名为 MaxTest.java 的文件中声明
Max.java:1: Max 不是抽象的,并且未覆盖 MaxTest 中的抽象方法 intCompare()
第二:从一个抽象类继承,如果不实现该抽象类的抽象方法则该子类也必须声明为抽象的,因为它继承了抽象的方法声明.如果不声明为抽象的,则必须实现它;
public class Max extends MaxTest
{
public void intCompare(){};//空实现即可
public void intCompare(int a,int b)
{
if (a<b)
{
System.out.println(a);
}
else
System.out.println(b);
}
public void intCompare(double c,double d)
{
if (c<d)
{
System.out.println(c);
}
else
System.out.println(d);
}
public static void main(String []args)
{
Max m = new Max();
m.intCompare(5,6);
m.intCompare(5.0,6.0);
}
}
abstract class MaxTest//去掉public标识
{
abstract void intCompare();
}
1.在一个.java文件中只能有一个public(公有的) class 这个public(公有的) class必须和你的.java文件同名。即Max
(public)错误 abstract class MaxTest{ abstract void intCompare();}
2.Max类继承了MaxTest类 就必须实现MaxTest类中的抽象方法。
只要加上
public void intCompare(){
}
就可以了。