【发布时间】:2020-10-18 22:20:14
【问题描述】:
我正在学习 Java 并自己练习。
我试图创建一个类变量String username,我想我会得到结果
“Hi Nat”,因为方法 engHi() 与变量在同一个类中。
class Greetings{
String userName = "Nat";
public static void engHi(String userName){
System.out.println("Hi "+userName);
}
}
public class Main {
public static void main(String[] args) {
Greetings.engHi();
}
}
我收到了这条消息。
Error:(11, 18) java: method engHi in class com.company.Greetings cannot be applied to given types;
required: java.lang.String
found: no arguments
reason: actual and formal argument lists differ in length
然后我在方法engHi()中添加了this.username = username
class Greetings{
String userName = "Nat";
public static void engHi(String userName){
this.userName = userName;
System.out.println("Hi "+userName);
}
}
public class Main {
public static void main(String[] args) {
Greetings.engHi();
}
}
结果是
Error:(12, 18) java: method engHi in class com.company.Greetings cannot be applied to given types;
required: java.lang.String
found: no arguments
reason: actual and formal argument lists differ in length
我认为由于该方法在同一个类中,因此我认为该方法会“自动”获取变量用户名,因此在调用该方法时我没有输入任何参数。 所以..这意味着方法不会从同一个类中获取任何变量?
【问题讨论】:
标签: java class variables methods