Java 为什么扩展抽象类的类必须有main方法
我试图访问扩展抽象类的类的add函数,该抽象类具有抽象add方法。请看下面的代码Java 为什么扩展抽象类的类必须有main方法,java,Java,我试图访问扩展抽象类的类的add函数,该抽象类具有抽象add方法。请看下面的代码 public abstract class Ar { abstract int add(int a, int b); } public class Adder extends Ar { int add(int a,int b){ return a+b; } /*public static void main(Strin
public abstract class Ar {
abstract int add(int a, int b);
}
public class Adder extends Ar {
int add(int a,int b){
return a+b;
}
/*public static void main(String[] args)
{
Adder a = new Adder();
}*/
}
public class Sol {
static void main(String atgs[])
{
Adder aa = new Adder();
System.out.println(aa.getClass().getSuperclass().getSimpleName());
System.out.println(aa.add(10, 10));
}
}
当我在加法器类中注释main方法声明时,我得到了一个错误:在类中找不到main方法,但是为什么我需要在加法器类中使用main方法呢
即使我不注释主方法,也没有得到空白输出。
< P>静态空格主键ATGs[] main必须是公共的,因为所有的类都有公共修饰符,确保您的类处于分离的文件中: 在SOL类中的main必须公开,否则编译器将不能使main开始执行。此外,如果您在Adder类中取消对main的注释,那么它将工作,但不会给出任何输出,因为它没有任何System.out.println语句 你可以试试这个abstract class Ar {
abstract int add(int a, int b);
}
class Adder extends Ar {
int add(int a,int b){
return a+b;
}
public static void main(String[] args)
{
Adder a = new Adder();
}
}
class Sol {
public static void main(String atgs[])
{
Adder aa = new Adder();
System.out.println(aa.getClass().getSuperclass().getSimpleName());
System.out.println(aa.add(10, 10));
}
}
这里的输出将取决于类文件的执行
对于java Sol
输出-
应收账
二十
对于java加法器,ouput将为空。这3个类在同一个文件中,您不需要。若要执行加法器,请尝试运行Sol。不,在扩展抽象类的类中定义main方法不是必须的。可能还有其他一些问题。此外,您可能正在尝试执行加法器。你必须执行Sol,你已经有72个代表点了,所以你现在肯定知道如何发布格式良好的代码了,对吧?您还知道,如果代码的格式良好,它就更容易理解,对吗?