0328
<객체지향 언어: OOP>
- 부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립해서 완성된 프로그램을 만드는 기법
- 특징: 캡슐화(Encapsulation), 상속(Inheritance), 다형성(Polymorphism)
<객체: Object>
- 자신의 속성을 가지고 있는 다른 것과 식별 가능한 것
- 자바에서는 이 속성들을 각각 필드(Field)와 메소드(Method)라고 부른다.
- 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스(instance)라고 한다.
<객체 생성(인스턴스 생성)>
- 정의된 클래스를 이용하여 '객체'를 생성한다.
- 생성 방법
클래스명 객체명 = new 클래스명(); // 대문자로 시작하는건 클래스, 소문자로 시작하는건 메소드(클래스명()은 생성자라는 메소드)
클래스명 인스턴스명 = new 클래스명();
- 객체(인스턴스) 사용 방법
객체명.필드명
객체명.메소드명()
<클래스>
- 객체지향언어에서 '객체'를 만드는 도구이자 설계도
- 객체(object), 인스턴스(instance)를 만드는 설계도
ex) 클래스 객체
사람 철수, 영희
붕어빵기계 붕어빵
- 구성
ex) 변수 > 필드(Field) // 명칭이 다른 이유는 클래스에 종속적
함수 > 메소드(Method)
<클래스 선언 규칙>
1) 하나 이상의 문자로 이루어져야 한다.
ex) Car, SportCar
2) 첫 번째 글자는 숫자가 올 수 없다.
3) '$', '_' 외의 특수 문자는 사용할 수 없다.
4) 자바 키워드는 사용할 수 없다. (예약어)
ex) int(x), for(x)
5) 첫 번째 글자는 대문자로 사용하는 것이 원칙이다.
-> 생성 및 실행에는 영향 X
<메인 클래스>
- 메인 메소드를 가지고 있는 클래스
- 프로그램이 시작되는 클래스
- 프로그램의 이름이 되는 클래스
- 하나의 자바 파일에 클래스가 2개 이상인 경우 public 키워드는 파일명과 일치하는 클래스에만 명시하고, 하나의 클래스만 public 키워드를 명시해야 한다.