0
다른 파일에 클래스를 사용해야하는 소프트웨어를 작성 중입니다. 프로그램을 실행하고 값을 넣으면 스레드 "main"java.lang.NullPointerException 클래스에서 Exception 오류가 발생합니다. 어떤 도움을 크게스레드 "main"의 예외 java.lang.NullPointerException 클래스
package chap8lab.salesperson;
public class Salesperson {
private int empID;
private double salesAmt;
public Salesperson()
{
empID = 9999;
salesAmt = 0;
}
public void setEmpID(int newEmpID)
{
empID = newEmpID;
}
public int getEmpID()
{
return empID;
}
public void setSalesAmt(double newSalesAmt)
{
salesAmt = newSalesAmt;
}
public double getSalesAmt()
{
return salesAmt;
}
}
를 감사 :
package chap8lab.salesperson;
import javax.swing.JOptionPane;
public class Chap8LabSalesPerson {
public static void main(String[] args) {
final int LIMIT = 10;
Salesperson[] peep = new Salesperson[LIMIT];
int i = 0, a = 0;
String q = "q", strInput = "";
JOptionPane.showMessageDialog(null,
"This program collects salesperson data.");
while (!strInput.equals(q))
{
strInput = JOptionPane.showInputDialog(null,
"Enter sales person ID (\"q\" to quit)");
if (!strInput.equals(q) && !strInput.matches("[a-z][A-Z]"))
peep[i].setEmpID(Integer.parseInt(strInput));
if (!strInput.equals(q))
strInput = JOptionPane.showInputDialog(null,
"Enter sales amount (\"q\" to quit)");
if (!strInput.equals(q) && !strInput.matches("[a-z][A-Z]"))
peep[i].setSalesAmt(Double.parseDouble(strInput));
i++;
if (strInput.equals(q))
i--;
}
while (a < i)
{
JOptionPane.showMessageDialog(null,
"Employee ID: " + peep[a].getEmpID()
+ " Sales Ammount: " + peep[a].getSalesAmt() + "\n");
a++;
}
JOptionPane.showMessageDialog(null,
"Thank you for using this program.\nHave a nice day!");
}
}
가 여기 내 클래스 파일 Salesperson.java입니다 : 다음은 내 코드입니다. 들여다 [I] 전에
내가 NPE 당신이 스택 트레이스를 읽고 문제를 진단하는 방법, 더 중요하고, 무엇을 설명 할 것입니다에 링크 된 질문 .setEmpID 및 논리적 인 공제. –