클래스란? 여러 변수들과 메소드들을 둘다 관리하기 위해 설계하고 사용하는 틀
클래스는 주어로 만든다.
모든 문장 맨 앞에는 클래스가 나오고, 영어는 맨 앞에 주어가 나온다.
따라서 클래스는 주어이고, 대문자로 시작한다.
String food = “banana”;
Monkey.eat(food);
[주어] [동사] [목적어]
클래스는 타입이다.
클래스는 추상적인 개념이고 이 클래스 안에는 필드가 존재한다.
추상적인 개념은 사용할 수 없기 때문에 그 필드를 구체화시킨 대상이 필요하다.
이러한 것들을 “객체”라고 부르고 영어로는 instance variable이라 부른다.
instance는 예, 예시라는 뜻이고 추상적인 개념의 한 예시로서
객체가 나오기 때문에 instance variable 이라 한다.
(자동차인데 예를 들어 내차)
[클래스] [객체]
추상적인 개념인 클래스를 이용해서 구체화시켜 객체를 만드는 작업을 객체화라고 한다.
클래스명 객체명;
int data;
따라서 클래스는 이때 만들어지는 객체의 타입이다.
클래스 선언
◆ 다른 클래스 외부에서 선언한다.
class 클래스명 {
필드(변수, 메소드) 선언
}
class Car{
String model;
String color;
int price;
void engineStart(){}
void engineStop(){}
}
클래스 사용
◆ 클래스는 추상적인 틀이기 때문에 먼저 객체화를 진행한다.
◆ 클래스를 사용한다 라는 뜻은 객체를 만든다 라는 뜻이다.
클래스명 객체명 = new 클래스명();
객체.메소드명();
객체.변수
Car mycar = new Car();
mycar.engineStart();
mycar.model = "Ferrari"
⭐ 하나의 저장공간에는 단 한개의 값만 담을 수 있다.
필드에는 여러개의 값이 존재하기 때문에 필드는 다른 곳(Heap)에 할당되고
할당된 필드의 주소값을 저장하는 것이 객체이다.
'Backend > Java' 카테고리의 다른 글
[Java] 기초정리 12. 다형성(Polymorphism) - 오버로딩, 오버라이딩 (0) | 2024.08.10 |
---|---|
[Java] 기초정리 13. 생성자 - 생성자 선언, this (0) | 2024.08.09 |
[Java] 기초정리 11. 메소드 - 메소드 선언, 사용 (0) | 2024.08.07 |
[Java] 기초정리 10. 문자열 메소드 - split() / indexOf() / charAt() / replace() / substring() / substring() / trim() / length() (0) | 2024.08.06 |
[Java] 기초정리 9. 배열 - 1차원 배열, 2차원 배열 (0) | 2024.08.05 |