StaticVar.java에서 데이터를 입력할 틀을 만들어 준다.
StaticTest.java에서 데이터를 입력해 준다.
스택에서 sv1 가리킴 = 힙에서 sv1 생성됨
StaticVar sv1 = new StaticVar();
StaticVar.java
public class StaticVar {
String name;
int score;
int count;
}
StaticTest.java
public class StaticTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
StaticVar sv1 = new StaticVar();
sv1.name = "홍길동";
sv1.score = 90;
sv1.count = 3; // 1이었다가 나나가 들어오면 2로 변경, 철이가 들어오면 3으로 변경
StaticVar sv2 = new StaticVar();
sv2.name = "김나나";
sv2.score = 70;
sv2.count = 3; // 2였다가 철이 들어오면 3으로 변경. 말이 안되게 불편하다..
StaticVar sv3 = new StaticVar();
sv3.name = "박철";
sv3.score = 50;
sv3.count = 3;
System.out.println(sv1.name+"이 속한 반의 지금까지 학생 수는 "+ sv3.count+"명이다.");
}
}
여기서 s1, s2, s3은 data table의 row와 같다.
그리고 count 변수에 들어가는 숫자는 id처럼 늘어나는 숫자이다.
김나나와 박철이 추가될 때마다 모든 count의 숫자를 2, 3으로 변경해 줘야 하는 것이다.
규칙적으로 들어나는 숫자이면서도 공통적으로 들어가는 데이터는
static으로 저장해서 사용할 수 있는 방법을 자바가 미리 마련해뒀다.
StaticVar.java
public class StaticVar {
String name;
int score;
static int count;
}
StaticTest.java
public class StaticTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
StaticVar sv1 = new StaticVar();
sv1.name = "홍길동";
sv1.score = 90;
StaticVar.count = StaticVar.count + 1;
StaticVar sv2 = new StaticVar();
sv2.name = "김나나";
sv2.score = 70;
StaticVar.count = StaticVar.count + 1 ;
StaticVar sv3 = new StaticVar();
sv3.name = "박철";
sv3.score = 50;
StaticVar.count = StaticVar.count + 1 ;
System.out.println("지금 까지 학생 수는 "+StaticVar.count);
}
}
위와 같이 공통 정보는 static 으로 저장해서 사용할 수 있다.
StaticVar.java
public class StaticVar {
String name;
int score;
static int count = 0;
}
StaticTest.java
public class StaticTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
StaticVar sv1 = new StaticVar();
sv1.name = "홍길동";
sv1.score = 90;
StaticVar.count++;
StaticVar sv2 = new StaticVar();
sv2.name = "김나나";
sv2.score = 70;
StaticVar.count++;
StaticVar sv3 = new StaticVar();
sv3.name = "박철";
sv3.score = 50;
StaticVar.count++;
System.out.println("지금 까지 학생 수는 "+StaticVar.count);
}
}
최종적으로 이렇게 간단하게 표기하여 사용한다.