我已经有一个名为validation的类,如下所示:
package Information;
public class Validation {
public static boolean emptyString(String s) {
if (s == null || s.isEmpty()) {
return true;
} else {
return false;
}
}
}
这是我的Jframe类:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if (Validation.emptyString(jTextField1.getText()) || Validation.emptyString(jTextField2.getText()))
{
JOptionPane.showMessageDialog(null, "Don't leave fields empty");
} else {
if (testaAdmin(jTextField1.getText(), jTextField2.getText())) {
Basen basenFrame = new Basen();
basenFrame.setVisible(true);
this.dispose();
} else {
JOptionPane.showMessageDialog(null, "Wrong username or password");
}
}
}
问题是Jframe类中的验证似乎没有得到它应该与Validation类通信。
它只是给我这个错误信息:
error: cannot find symbol Validation.emptyString(jTextField2.getText()))
这是为什么?
答案 0 :(得分:0)
问题可能是由于缺少导入。如果Validation
类与JFrame
位于不同的包中,则需要根据MrWiggles的答案明确导入:
import Information.Validation;
我强烈建议你下载一个IDE,例如Eclipse或IntelliJ,因为它将为您提供比编译器更多的信息和自动帮助来修复它们。
此外,当您收到编译器错误时,您可能会使用Google查找说明,并且无需在StackOverflow上发布问题。您只需要省略特定于应用程序的条款。正在搜索:"error: cannot find symbol"
找到long StackOverflow post on the subject。
答案 1 :(得分:-1)
您需要确保已导入验证类。在课堂上你已经有了你的JFrame,请确保你已经将这一行放在了最顶层:
import Information.Validation;