9osari.log
← All posts

[JAVA Questions] 클래스와 객체 예상질문

April 21, 2025 · 4 min read · #java#questions#김영한-java-기본

✅ 1. 클래스와 객체에 대한 기본 개념

클래스는 객체를 생성하기 위한 설계도이고, 객체는 클래스(설계도)를 기반으로 메모리에 생성된 실체입니다.

✅ 2. 객체 생성과 메모리 구조

new 키워드를 사용하면 클래스 정보를 기반으로 객체(인스턴스)가 힙 영역에 생성되고, 그 메모리 위치를 가리키는 참조값이 반환됩니다. 이 참조값이 변수에 저장되어 객체에 접근할 수 있습니다.

✅ 3. 참조값(주소)의 의미

new 키워드를 통해 클래스 기반으로 한 객체(인스턴스)가 힙 영역에 저장되며, 이 객체의 참조값(주소)가 반환되어 변수 student1에 저장됩니다. 이후 이 변수에 저장된 참조값을 사용해 객체에 접근할 수 있습니다.

✅ 4. 참조값 복사

객체가 복사되는 게 아니라, 객체의 참조값이 복사됩니다.

✅ 5. 클래스가 필요한 이유

배열이나 변수만을 사용하면 데이터가 늘어날수록 유지보수와 확장성이 떨어집니다. 반면 클래스는 관련 데이터를 하나의 단위로 묶어 관리하기 때문에 구조화된 코드 작성, 유지보수, 확장성에 뛰어납니다.

✅ 6. 객체 지향적 사고

클래스에 국어, 수학, 영어 필드를 추가하고 평균을 구하는 기능(메서드)를 추가합니다.

✅ 7. 실무 연계

customer 클래스를 만들고 객체 배열이나 리스트로 관리하면 효율적이고 유지보수가 쉬운 코드를 만들 수 있습니다.

✅ 8. 출력 결과 예측

student1, student2 두 변수는 같은 객체를 참조하기 때문에, student2.name를 바꾸면 student1.name도 바뀌게 됩니다. 즉 “학생2”가 두 번 출력됩니다.
Student student1 = new Student();
student1.name = "학생1";

Student student2 = student1;
student2.name = "학생2";

System.out.println(student1.name);
System.out.println(student2.name);

···
← PREV [JAVA] final NEXT → [JAVA] 상속