728x90
반응형
객체지향이론 : '실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물(객체)간의 상호작용이다.
자바는 절차적 언어가 아닌 객체지향 언어이다.
객체지향언어의 장점은 코드의 재사용성이 높고 유지보수가 용이하다.
● 클래스 : 객체의 설계도, 틀
● 객체 : 실제로 존재하는 사물 또는 개념
● 인스턴스 : 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 하며, 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다. 결국 인스턴스는 객체와 같은 의미이지만, 객체는 포괄적인 의미를 갖고 있고, 인스턴스는 구체적인 의미를 갖고 있다.
객체의 구성요소 - 속성과 기능
● 속성 : 멤버변수, 특성, 필드, 상태(모두 같은 의미)
● 기능 : 메서드, 함수, 행위(모두 같은 의미)
TV t; //Tv클래스 타입의 참조변수 t를 선언
t = new Tv(); //Tv인스턴스를 생성한 후, 생성된 Tv 인스턴스의 주소를 t에 저장
인스턴스는 참조변수를 통해서만 다룰 수 있으며, 참조변수의 타입은 인스턴스의 타입과 일치해야 한다.
클래스는 객체지향이론의 관점에서 '객체를 생성하기 위한 틀'이며 '클래스는 속성과 기능으로 정의되어있다.'고 했다.
하지만 프로그래밍적인 관점에서는 두 가지 의미를 더 가진다.
1. 클래스 - 데이터와 함수의 결합
2. 클래스 - 사용자 정의 타입
728x90
반응형
'Skills > Java' 카테고리의 다른 글
객체지향의 5원칙 SOLID (0) | 2023.01.29 |
---|---|
인스턴스 메서드, 클래스 메서드 (0) | 2022.12.19 |
오버로딩 (0) | 2022.12.16 |
클래스변수, 인스턴스변수, 지역변수 (0) | 2022.12.16 |
점프 투 자바 정리 (1) (자바와 자료형) (1) | 2022.10.21 |