我想在类的构造函数中访问name和age的值选择我在哪里提到public Choose(){ 哪些存储在NewP的GetValues方法
中Choose.java
class Choose {
String Cn,Ca;
public Choose(){
btn.addMouseListener{
}
}
public static void gtNp(string nn,string aa) {
Cn=nn;
Ca=aa;
}
}
NewP.java
class NewP {
Choose C1 = new Choose();
NewP() {
btn.addMouseListener{
GetValues();
Choose.gtNp(name,age);
}
}
public NewP GetValues(){
Name= ;
Age= ;
return null;
}
}
答案 0 :(得分:3)
我当前可能没有明白你的代码,但在某种程度上它令人困惑。我发现有几个问题。
首先,你有一个static
方法设置Choose
类的值,这应该导致错误,因为你从静态上下文访问非静态变量。您应该使用getter和setter(或直接使用字段,其他人可能会说)。使用此方法:
public static void gtNp(string nn,string aa){
Cn=nn; //Java convention: fields and methods start with lowercase.
Ca=aa;
}
将导致Choose
的所有实例共享相同的值,但当然,这可能是所需的行为。如果它们与实例相关,则可以在构造函数中传递这些值:
public Choose(String nn, String aa){
cn = nn; //To adapt your code to the convention, I've used lowercases here.
ca = aa;
btn.addMouseListener{
}
无论哪种方式,您都希望为这些字段添加getter或setter。您可能想要检查setters
和getters
是什么并实施它们。我会留下那些作为你的练习。
以下是一些可以帮助您的基本链接: