※멤버 변수,필드 클래스에 소속된 변수를 뜻한다
※객체, 인스턴스 클래스는 설계도이고, 이 설계도를 기반으로 실제 메모리에 만들어진 실체를 객체 또는 인스턴스라 한다.
※변수선언, 객체생성, 참조값 보관
Student student1 = new Student(); //1. new 키워드를 통해 heap영역에 Student 객체 생성 //2. new Student()의 결과로 x001 참조값을 stack에 있는 변수student1에반환
Student student1 = x001; student1 = x001; //3. 최종 결과

※객체에 값 대입
student1.name="학생1" //1. student1 객체의 name 멤버 변수에 값 대입 x001.name="학생1" //2.변수에 있는 참조값을 통해 실제 객체에 접근, 해당 객체의 name 멤버 변수에 값 대입

※객체 값 읽기
System.out.println("이름:" + student1.name); //1. 객체 값 읽기

※클래스와 배열
package class1;
public class ClassStart4 {
public static void main(String[] args) {
Student student1 = new Student();
student1.name = "학생1";
student1.age = 15;
student1.grade = 90;
Student student2 = new Student();
student2.name = "학생2";
student2.age = 16;
student2.grade = 80;
Student[] students = new Student[2];
students[0] = student1;
students[1] = student2;
System.out.println("이름:" + students[0].name + " 나이:" + students[0].age
+ " 성적:" + students[0].grade);
System.out.println("이름:" + students[1].name + " 나이:" + students[1].age
+ " 성적:" + students[1].grade);
}
}

배열 선언 최적화 Student[] students = new Student[]{student1, student2};
Student[] students = {student1, student2};
//생성과 선언을 동시에 하는 경우 다음과 같이 더 최적화 할 수 있다