gpt4 book ai didi

java - 在java中创建一个虚拟对象

转载 作者:行者123 更新时间:2023-12-01 13:47:45 25 4
gpt4 key购买 nike

我正在开发一个有两个类的java程序。一类称为员工,具有声明和验证,例如姓名、年龄和员工编号。在我的主类中,我想验证员工编号和单独的编号。我如何创建一个虚拟对象(或某些人调用的虚拟访问器)来获取它?我的程序通常如下所示:

package empdatabase;

public class empdatabase

{
public static employee [] emp = new employee[50];
public static int count = 0;

public static void main(String[] args) {


}//end class main


public static void usermenu()
{
String input = new String("");
int choice = 0;

input = JOptionPane.showInputDialog("user menu"+"\n 1. employee registration"
+ "\n 2. employee login")

choice = Integer.parseInt(input);

switch(choice)

{

case 1:
if (count <50){
emp[count] = new employee();
emp[count].getemployee();


emp[count].disp();

count++;
//usermenu();
}//end if statment
break;

case 2:
emplogin();
break;

default:

JOptionPane.showMessageDialog("error, not a valid choice");


}//end usermenu


public static void emplogin()
{
String input = new String("");
input = JOptionPane.showInputDialog("enter your employee ID");

//dummy object goes here


}//end login


}//end empdatabase class



class employee{


String empNumber;
String First;
String Last;
int age;


employee()
{
empNumber = "";
First = "";
Last = "";
age = 0;



}//end employee constructor



boolean ValidateLetter(String input)
{
for(int i = 0; i < input.length(); i++)
{

if( !Character.isLetter(input.charAt(i)))
{
return false;
}//end if Char...


}//end while i for loop
return true;


}//end ValidateLetter


boolean checkNumber(String input)
{
int i = 0;
while( i < 9)
{
if(!Character.isDigit(input.charAt(i)))
return false;
i++;
}//end while
return true;

}//end check number

void disp()
{
JOptionPane.showMessageDialog(null, "employee number: "+ empNumber+
"\n name: " + first+ " "+ last);
}//end disp

}//end class employee

这只是最基本的内容,但它应该能让您了解我需要什么。

最佳答案

由于您的 employee.ValidateLetteremployee.checkNumber 方法不使用 employee 类的任何字段,因此它们应该是 static .

static boolean ValidateLetter(String input) { ... }

现在您可以在没有任何特定 employee 对象的情况下调用它们:

if (employee.ValidateLetter(input)) {
...
}

另外请考虑遵循standard naming conventions因为它会让你的代码更容易阅读。例如,类似于 Employee.isValidName 而不是 employee.ValidateLetter

关于java - 在java中创建一个虚拟对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20223633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com