Recent Posts
Link
250x250
오늘보다 더 나은 내일의 나에게_
클래스 / 객체 / 인스턴스 본문
728x90
클래스
- 필드(데이터, 속성, 변수)와 메서드(행위)를 가지고 있는 집합이다.
- 객체를 생성하기 위한 틀이다.
- class키워드로 정의하고, new연산자를 통해서 인스턴스를 생성한다.
*클래스에서 객체를 생성하는 과정을 인스턴스화라고 하며, 생성된 객체를 인스턴스라고 한다.*
객체와 인스턴스
Animal cat = new Animal()
이렇게 만들어진 cat은 객체이다. 그리고 cat이라는 객체는 Animal의 인스턴스(instance)이다.
인스턴스라는 말은 특정 객체(cat)가 어떤 클래스(Animal)의 객체인지를 관계위주로 설명할 때 사용된다.
즉, "cat은 인스턴스" 보다는 "cat은 객체"라는 표현이 "cat은 Animal의 객체" 보다는 "cat은 Animal의 인스턴스" 라는 표현이 훨씬 잘 어울린다.
객체 ⊃ 인스턴스
클래스 구조
fields (상태) - 상태를 정의하는 필드!
method(동작) - 동작을 정의하는 메소드!
=> 클래스는 필드(상태), 메소드(동작)로 구성
클래스 예시
고양이 예시
클래스 이름 -> Cat
필드 - > name, breeds, weight
메소드 -> claw(), meow()
Cat cat = new Cat();
=> 참조변수 자료형 + 참조변수명 = new(메모리 내 인스턴스 생성) + Cat( ) (생성자 호출)
생성자(Constructor)란?
클래스 내에서 인스턴스가 생성될 때 호출되는 특별한 형태의 '인스턴스 초기화 메서드'이다.
인스턴스가 생성될 때 같이 생성되어 인스턴스 변수들을 초기화(0으로 만드는게 아니라 값을 지정)하거나
인스턴스 생성시 실행할 작업 등을 위해 사용된다.
● 생성자의 이름은 클래스의 이름과 같아야 한다.
● 생성자는 리턴값이 없다.
생성자는 아무런 매개변수도 받지 않는 기본 생성자와
매개변수를 받아서 인스턴스 초기화 작업을 할 수 있는 생성자 둘로 나뉜다.
728x90
'JAVA' 카테고리의 다른 글
Java 배열 (0) | 2022.01.13 |
---|---|
Java 반복문 (0) | 2022.01.13 |
Java 조건문 (0) | 2022.01.12 |
Java 자료형과 연산자 (0) | 2022.01.12 |
Java 자바특징 및 변수 (0) | 2022.01.12 |
Comments