객체 지향 프로그램
- 현실을 표방하는 개발 기법
- 객체: 속성 + 기능
- 순서
- 개발 대상의 선택
- 개발 대상을 분석
- 기능과 속성을 명세(ex. 모니터)
- 속성: 색깔 / 가격 / 브랜드 등등
- 기능: 전원 켜기, 끄기 / 밝기 조정 등등
- 개발 대상 설계도 작성(클래스)
클래스
- 설계도 목적으로 쓰임
- 시작점인 main method를 가지는 class는 딱 하나여야 함
- 기능은 method로 명시
- 참조 자료형이기 때문에 Heap에 저장하고, new로 선언함
- new를 통해 실체화된 instance(객체)가 Heap에 저장됨
- Instance는 모든 reference가 사라질 때 같이 사라짐
- 클래스의 method는 Ram의 txt에 저장되고, 메서드의 매개 변수는 stack에 저장됨
- 객체. : instance 접근 연산자, 인스턴스 주소를 찾아가라는 명령
▽ 예제 코드 1 ▽
public class Exam_04 {
public static void main(String[] args) {
Monitor mon = new Monitor(); // 주소형
// new를 통해 실체화된 instance(객체)가 Heap에 저장됨
// class의 method는 Ram의 txt에 저장됨
// 그 method의 지역 변수는 stack에 저장됨
// mon. -> instance 접근 연산자(mon의 인스턴스 주소를 찾아가라는 명령)
mon.powerOn();
mon.setPrice(1000);
System.out.println(mon.getPrice());
mon.setColor("blue");
System.out.println(mon.getColor());
System.out.println(mon);
System.out.println(mon.getThis()); // mon 자기 자신의 instance의 주소를 get함
Tv tv = new Tv();
}
}
'자바 - Java > 이론' 카테고리의 다른 글
[Java] Java Programming - 생성자(Constructor) (0) | 2020.04.02 |
---|---|
[Java] Java Programming - 정보 은닉, 멤버 변수, 지역 변수 (0) | 2020.04.02 |
[Java] Java Programming - 참조 호출(Call by reference), 값 호출(Call by value), 가변 인자 매개 변수, Method Overloading (0) | 2020.04.02 |
[Java] Java Programming - 메서드, String 자료형 메서드 종류 (0) | 2020.04.02 |
[Java] Java Programming - String 값 참조, String 주소 참조 (0) | 2020.04.02 |