클래스란? 객체를 정의해 놓은 것
클래스의 용도? 객체를 생성하는데 사용됨
클래스로부터 객체를 만드는 과정 : 클래스의 인스턴스화
클래스로부터 만들어진 객체 : 클래스의 인스턴스
👉객체와 인스턴스는 같은 의미이지만 객체가 인스턴스보다 포괄적인 의미
ex) 책상은 인스턴스다 x
책상은 개체다 o
책상은 책상 클래스의 객체이다 x
책상은 책상 클래스의 인스턴스다 o
클래스의 구조 🔎
(접근제어자) class 클래스명 { 멤버변수(=속성,필드) 생성자 메서드(=기능) }
1) 클래스 변수
static
+ 인스턴스 변수2) 인스턴스 변수
3) 지역 변수
1) 기본값
2) 명시적으로 초기화
ex) int a = 10;
String s = "a";
3) 생성자를 통해 초기화
생성자? 멤버 변수에 값을 채워 객체 생성
생성자가 없으면 컴파일러가 자동으로 기본 생성자 삽입
생성자 { } 안에 super( );가 없으면 자동으로 첫줄에 삽입
super( ) : 부모 생성자를 호출해 부모 객체 생성
기본 생성자는 부모 생성
=> 자식의 멤버 변수에 '기본 값'으로 채워 자식 객체 생성
public class Book {
public book() { //생성자
super(); //부모의 생성자 호출
}
}
class Book {
book() {
super();
}
}
1) final class 클래스명 : 상속 불가
2) final 멤버 변수 : 값 변경 불가
3) final 메서드 : 재 정의 불가
public
은 반드시 1개의 클래스에만 붙일 수 있음