
- 학생 한명을 추가하기 위해서는 변수명을 바꿔야 하며 일일히 노가다가를 해주면서 바꿔야 한다. 하지만 이런 반복 노가다 부분은 반복문을 사용하여 해결할 수 있다. 하지만 이 역시 해결할 수 없다. 왜냐하면 변수의 명도 바꿔줘야 하기 때문인데 변수명이 전부 다 다르기 때문에 반복문을 활용하여 문제를 해결할 수 없다.
- 그렇기에 변수의 이름을 하나로 통일 시켜줘야 하는데 같은 데이터 타입을 하나로 묶을 수 있는것이 배열이다. 배열을 사용하면 이런 문제를 해결할 수 있다.

결론 : 클래스를 왜 사용해야 하냐면 한사람의 데이터는 하나식 관리해야하는데 사진과 같은 경우 한 사람의 데이터가 여러 변수에 분산되어 있으며 또한 한사람의 데이터를 지우려면 그 사람 정보의 정확한 인덱스 위치를 일일히 지워줘야 하기 때문에 이런점은 사람에게 있어서 데이터를 관리하는 점이 엄청 불편하다 그래서 클래스라는것이 생기게 되었고 클래스는 객체로 한사람의 데이터 전부를 관리할 수 있다.
클래스의 도입
- 클래스를 사용하면 int, String과 같은 타입을 사용자가 정의할 수 있다.
- 사용자가 타입을 정의하려고 하면 설계도가 필요하다고 하는데 그 설계도가 바로 클래스이다.
- 설계도를 만들어 실제 메모리에 만들어진 실체를 객체라고 한다. 자바가 도면인 클래스를 보고 메모리에 공간을 할당하여 만든 작업물이 객체 또는 인스턴스 이다.
- 클래스를 통하여 사용자가 원하는 데이터의 타입을 만들수 있다.
용어
- 클래스는 설계도 이고 이 클래스를 이용하여 메모리에 만들어진 실체를 객체라고 한다.
참조값 보관
- 객체를 생성하면 메모리 어딘가에 있는 객체에 접근할 수 있는 참조값(주소)을 반환한다.
- new키워드를 통해 객체가 메모리에 생성이 되면 바로 참조값을 반환하게 되며 클래스로 선언한 변수안에 참조값이 담기게 된다.
- 참조값이 담긴 변수를 통해 메모리 어딘가에 있는 객체에 접근하여 데이터를 불러올 수 있다.
참조값을 변수에 보관하는 이유
- 객체를 생성하는 코드 new student()는 메모리에 객체를 생성할 뿐 실제로 객체에 접근할 수 없다. 그렇기에 객체에 접근할 수 있는 참조값을 어딘가에 보관해두어야 하는데 바로 변수에 보관하여 참조값을 통하여 생성된 객체에 접근할 수 있다.
- 정리해서 말하자면 참조값을 보관하기 위해 변수를 사용하며 객체의 위치가 담겨있는 참조값을 사용하여 객체에 접근한다.
객체사용
클래스를 통해 메모리에 생성된 객체에 접근하기 위해서는 .dot을 사용하여 해당 객체에 접근할 수 있다.
객체에 값 대입
객체안에 데이터를 대입하기 위해서는 .을 사용해야 한다.