클래스를 프로그래밍하여 새 객체가 생성 될 때마다 그 객체에 새 생성 된 코드가 생기도록하지만 그 값을 전달하지 않는 것이 트릭입니다. 생성자에 대한 인수 대략 나는 다음과 같습니다클래스 내에서 변수 값이 자동으로 생성됩니다.
다음public class Article{
private int cod;
private String name;
public Article(String name){
this.name=name:
}
}
I가이 기사 클래스를 호출 할 수있는 송장라는 클래스 :
public class Invoice{
ArrayList<Article> detailList;
public add(Article a){
detailsList.add(a);
}
public ArrayList<Article> getArticleList(){
return detailList;
}
}
그래서 난 때마다 내가 메인 클래스의 일부 기사를 만드는 것이 원하는 그리고 코드가 자동으로 생성 한 위해 Invoie 클래스들을 추가 : 내가 사용 시도
main class
ArrayList<Article> temp;
Article a1=new Article(....)
Article a2=new Article(....)
Article a3=new Article(....)
Invoice inv;
inv.add(a1)
inv.add(a2)
inv.add(a3)
//for example I want the first element to get a code of 10, the next as 20 and so on
temp=inv.getArticleList();
for (int i=0;i<temp.size();i++){
System.out.println(temp.get(i).getCod());
}
:
private static int cod
기사 클래스
다음에 +10을 추가 할 때마다 add 메소드를 호출하지만 주 클래스의 목록에서 결과를 인쇄 할 때 최종 생성 코드 만 인쇄됩니다. 어떻게 해결할 수 있습니까?
감사
는
정적 변수가 무엇인지 읽어보십시오. 지금처럼 거의 사용할 수 있지만 동기화 된 블록 내에서 또는 AtomicInteger를 사용하여 인스턴스 변수에 정적 변수를 할당해야합니다. –
코드가 계산되지 않고 코드를 추가하거나 빼기를 원하는 곳이 명확하지 않습니다. –