Это не только определено в классе, оно определено в методе в классе.
Это не «частная» переменная (или класс), а переменная нечеткая, что касается других классов. Выставляйте его с помощью публичного геттера или предоставляйте механизм, который код может установить на другом.
Поскольку это обработчик действий, вам также необходимо убедиться, что переменная будет доступна только после того, как она будет установлена, или что доступ к ней может иметь дело с ней не, имеющий значение.
public class WhateverClassThisIs {
private String username;
public String getUsername() { return username; }
private void btnloginActionPerformed(java.awt.event.ActionEvent evt) {
String sql = "select * from userinfo where uname=? and pword=?";
try {
// As before, but:
if (rs.next()) {
username = txt_username.getText();
}
}
}
}
public class SomeOtherClass {
private WhateverClassThisIs theOtherClass;
public void setTheOtherClass(WhateverClassThisIs theOtherClass) {
this.theOtherClass = theOtherClass;
}
public void whatever() {
String username = theOtherClass.getUsername();
}
}
Другой механизм мог бы рассчитывать на прохождение что-то, чтобы WhateverClassThisIs
с именем пользователя сеттер, грубо:
public class WhateverClassThisIs {
private SomeOtherClass someOtherClass;
public WhateverClassThisIs(SomeOtherClass someOtherClass) {
this.someOtherClass = someOtherClass;
}
private void btnloginActionPerformed(java.awt.event.ActionEvent evt) {
String sql = "select * from userinfo where uname=? and pword=?";
try {
// As before, but:
if (rs.next()) {
someOtherClass.setUsername(txt_username.getText());
}
}
}
}
public class SomeOtherClass {
private String username;
public void setUsername(String username) {
this.username = username;
}
public void whatever() {
// Do something with username--but either try
// after you know it's been set, or by being
// able to handle it being null/empty/whatever
}
}
Кроме того, вы можете использовать Observer
, любой из нескольких свинг-иш механизмы и т. д.
Определите методы доступа к публике и используйте их. –
Я вижу ** не ** частный класс в вашем коде, все, что я вижу, - это частный метод с именем локальной переменной. – PermGenError
@PremGenError: Я сожалею об этом. Можете ли вы рассказать мне, как я могу получить доступ к этому имени локальной переменной из другого класса или другого метода в том же классе? и не могли бы вы дать код для этого. – user2068452