BACK/JAVA

[JAVA] 클래스와 데이터

연듀 2024. 1. 30. 15:16

 

클래스와 객체

public class Student {
    String name;
    int age;
    int garde;
}

 

 

클래스는 사용자 정의 타입을 만들기 위한 설계도이다.

클래스에 정의한 변수들을 멤버 변수, 또는 필드라 한다.

 

클래스를 사용해 실제 메모리에 만들어진 실체를 객체 또는 인스턴스라고 한다.

⇒ 클래스는 설계도이고, 이 설계도를 기반으로 실제 메모리에 만들어진 실체를 객체 또는 인스턴스라고 한다.

 

 

 

-클래스: 객체를 생성하기 위한 설계도. 객체가 가져야할 속성(변수)와 기능(메서드)를 정의

-객체: 클래스에서 정의한 속성과 기능을 가진 실체

-인스턴스: 특정 클래스로부터 생성된 객체 (객체가 어떤 클래스에 속해있는지 강조할 때 사용)

 

 

객체 생성

Student student1 = new Student(); // 1. Student 객체 생성
Student student1 = x001; // 2. new Student() 결과로 x001 참조값 반환해 저장
student1 = x001; // 3. 최종 결과 

 

배열 도입

Student[] students = new Student[2];

 

student 타입의 변수는 student 인스턴스의 참조값을 보관한다. 초기에는 null로 초기화

 

students[0] = student1;
students[1] = student2;
// = 
students[0] = x001;
students[1] = x002; 

 

 

자바에서 대입은 항상 변수에 들어 있는 값을 복사한다.

즉, 인스턴스가 아닌 참조값이 복사된다.

 

 

 

 

참고)

김영한 - 실전 자바

https://www.inflearn.com/course/%EA%B9%80%EC%98%81%ED%95%9C%EC%9D%98-%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94-%EA%B8%B0%EB%B3%B8%ED%8E%B8/dashboard