Eva*_*win 4 java oop class subclass
我在理解Java中的类时遇到了一些麻烦.
比如如何在helper类中声明"Inputter"?
public class Helper
{
public void Helper(String z)
{
if(z.length() == 0)
{
System.out.println("You can't leave it blank!");
System.exit(1);
System.out.println("It's not working... ;(");
}
}
public void Inputter(int a)
{
// blah blah
}
}
Run Code Online (Sandbox Code Playgroud)
你会这样称呼它吗?
Helper x = new Inputter();
Run Code Online (Sandbox Code Playgroud)
请帮助,不,这不是一个功课问题.
谢谢,微笑
编辑:这是对的:
public class Helper
{
public Helper(String z)
{
if(z.length() == 0)
{
System.out.println("You can't leave it blank!");
System.exit(1);
System.out.println("It's not working... ;(");
}
}
public void Inputter(int a)
{
// blah blah
}
}
Run Code Online (Sandbox Code Playgroud)
并声明:
Helper x = Helper();
Run Code Online (Sandbox Code Playgroud)
感谢大家对StackOverflow的热烈欢迎!:d
Mic*_*rdt 10
你的问题不是类,而是构造函数和方法,以及它们之间的区别.
方法可以有你喜欢的任何名称,它们必须声明一个返回类型(可能void),并且它们被调用如下:
ReturnType r = methodName(param1, param2)
Run Code Online (Sandbox Code Playgroud)
构造函数用于创建类(对象)的实例.它们必须与类具有相同的名称,它们必须没有返回类型(不是偶数void),它们的调用方式如下:
MyClass m = new MyClass(param1, param2);
Run Code Online (Sandbox Code Playgroud)
您的代码中存在几个问题:
Helper具有构造函数的正确名称,但由于它声明了void返回类型,因此编译器会将其视为方法.Inputter甚至没有构造函数的正确名称.要将它用作构造函数new,它必须是被调用的类的一部分Inputter