티스토리 뷰
반응형
1. 클래스의 개념
클래스(class)와 객체
- 자바에서 클래스란 객체를 만들어 내기 위한 설계도 또는 틀과 같은 의미로 사용됩니다.
- 클래스 모양 그대로 생성된 실체를 객체라고 합니다.
- 쉽게 이해해하자면 붕어빵 틀과 붕어빵 사이의 관계를 클래스와 객체라고 볼 수 있다. 붕어빵 틀은 자바 클래스이고, 붕어빵은 자바 객체이다. 붕어빵은 틀의 모양대로 만들어지지만 앙코붕어빵, 슈크림붕어빵, 크림치즈붕어빵 등 서로 조금씩 다릅니다.
인스턴스(instance)
- 클래스로부터 객체를 선언하는 과정을 클래스의 인스턴스화라고 합니다.
- 자바에서는 하나의 클래스로부터 여러개의 인스턴스를 생성할 수 있습니다.
2. 클래스의 구성
- 자바 클래스는 class 키워드를 사용하여 선언한다.
- 클래스의 구성요소를 멤버(member)라고 부르며, 멤버는 속성을 표현하는 필드(filed)와 기능을 나타내는 메소드(method)를 가집니다.
- 또한 클래스는 생성된 객체의 필드를 초기화해주는 메소드인 생성자(Constructor)를 가집니다.
접근제어자 class 클래스이름 {
접근제어자 필드1의타입 필드1의이름;
접근제어자 필드2의타입 필드2의이름;
...
접근제어자 메소드1의 원형
접근제어자 메소드2의 원형
...
};
필드(field)
- 객체 내에 값을 저장할 멤버 변수를 필드라고 부른다.
- 클래스 내에서 선언된 위치에 따라 클래스변수(static variable), 인스턴스변수(instance variable), 지역변수(local variable)로 구분된다.
메소드(method)
- 메소드는 함수이며 객체의 행동을 구현한다.
생성자(constructor)
- 클래스의 이름과 동일한 메소드를 생성자라고 한다.
- 생성자는 객체가 생성될 때 자동으로 호출되는 특별한 메소드이다.
- 즉, 자바에서 객체의 생성과 동시에 인스턴스 변수를 원하는 값으로 초기화할 수 있는 메소드를 생성자라고 한다.
3. 클래스의 선언
자바에서 클래스는 다음과 같이 접근제어자와 함께 class 키워드를 사용하여 선언합니다.
//접근권한자 클래스선언 클래스이름
public class Circle { // 원 클래스 선언
public int radius; // 원의 반지름 필드
public String name; // 원의 이름 필드
public Circle() { // 원의 생성자 메소드
}
public double getArea() { // 원의 면적 계산 메소드
return 3.14*radius*radius
}
}
4. 인스턴스 생성
위와 같이 선언된 클래스를 가지고 Circle객체의 인스턴스를 생성할 수 있다.
레퍼런스 변수 선언
Circle pizza; //객체 참조를 위한 참조변수 pizza 선언
- Circle 객체를 생성한 것이 아니라, 변수 pizza는 Circle클래스의 객체에 대한 주소를 가지는 변수일 뿐이다.
new연산자로 객체 생성
pizza = new Circle();
- new 연산자를 이용해 객체를 생성한다.
- 생성된 Circle객체의 주소를 pizza 변수에 대입한다.
레퍼런스 변수 선언과 동시에 객체 생성
Circle pizza = new Circle();
- 레퍼런스 변수 선언과 객체 생성은 동시에 할 수 있다.
5. 객체 멤버 접근
객체의 멤버에 접근할 때는 레퍼런스 변수 뒤에 .(점) 연산자를 붙인다.
pizza.radius = 50;
반응형
'JAVA' 카테고리의 다른 글
[Java] 상속(Inheritance) - (1)상속 개념, 상속 특징 (0) | 2022.03.24 |
---|---|
[Java] 메소드(methond)와 생성자(constructor) (0) | 2022.03.23 |
[Java] 객체지향 프로그래밍(OOP) (0) | 2022.03.21 |
[Java] 리스트 (List, ArrayList) (0) | 2022.03.15 |
[Java] 배열 (2) | 2022.03.14 |
댓글
반응형
공지사항