Ⅱ. 클래스의 활용
1. 클래스의 구조
- 클래스(자료형)로 데이터(객체)를 만듦
- class 클래스명{ }
- 패키지 안에 클래스명은 겹칠 수 없음
- 클래스는 여러 개 있어도 되나 메인 메소드는 한 개 이어야 함
- 클래스명은 대문자로 시작
- 클래스 밖에 올 수 있는 3가지
- package
- .java 파일의 폴더(패키지) 위치
- default의 경우 폴더가 생성되지 않음
- import
- 외부 라이브러리를 가져옴
- 다른 폴더(패키지) 위치의 클래스를 참조
- 외부클래스 (External class)
- 외부에 포함된 또 다른 클래스
- public 키워드를 사용할 수 없음
- 클래스 안에 올 수 있는 4가지
- 필드 (멤버)
- 클래스 특징(속성)을 나타내는 변수 (int age =20)
- 메소드 (멤버)
- 클래스의 기능 (void working( ){…})
- 리턴타입 + 메소드이름 + ( ) + { }로 구성
- 생성자
- 객체 생성 기능 (생성자이름+( )+{ })
- 생성자의 이름은 클래스 이름과 동일하여야 함
- 내부클래스 (inner class) (멤버)
- 클래스 내부 정의된 클래스
2. 클래스(Class)와 객체(Object)
- 클래스(Class), 객체(Object), 그리고 인스턴스(Instance)
- 클래스 : 설계도
- 객체 : 어떤 대상
- 인스턴스 : 설계도를 토대로 만든 어떤 대상
※ 객체(Object) = 클래스(Class)의 인스턴스(Instance)
3. 객체의 생성 및 활용
- 객체의 생성
// Example
// Car라는 이름의 참조자료형이 만들어짐
class Car {
String name = "아반떼";
void drive() {
System.out.println("출발");
}
void breaking() {
System.out.println("정지");
}
}
public class Main {
public static void main(String[] args) {
Car redCar = new Car();
Car blueCar = new Car();
// new를 하면 새로운 데이터로 적재하므로 redCar과 blueCar은 다름
redCar.drive(); // 출발
blueCar.drive(); // 출발
redCar.breaking(); // 정지
blueCar.breaking(); // 정지
System.out.println(redCar.name); // 아반떼
System.out.println(blueCar.name); // 아반떼
System.out.println(redCar == blueCar); // false (주소가 다름)
'Programming Language > Java' 카테고리의 다른 글
클래스 내부 구성요소 - 2. 메소드 (0) | 2022.07.08 |
---|---|
클래스 내부 구성요소 - 1. 필드 (0) | 2022.07.08 |
클래스의 기본 문법 - 1. 클래스 개념 및 기본 구조 (0) | 2022.07.08 |
참조자료형 - 5. String 참조자료형 (0) | 2022.07.07 |
참조자료형 - 4. main( ) 메소드 매개변수 (0) | 2022.07.07 |