JAVA

▶︎객체(OOP)◀︎

chojdsj 2023. 4. 30. 13:53
728x90
객체지향언어

 

 

- 객체지향 언어란?

 

현실세계는 사물이나 개념처럼 독립되고 구분되는 각각의 객체로 이루어져 있으며, 발생하는 모든 사건들은 객체간의 상호작용이다. 이 개념을 컴퓨터로 옮겨놓아 만들어 낸것이 객체지향언어이다. 

 

 

 

 

- 자바에서 객체란?

 

 

클래스에 정의된 내용대로 new 연산자를 통해 메모리 영역에 생성된 것.

 

 

 

 

 객체지향 4대 특징 

 

* 캡슐화 : 추상화를 통해 정리된 데이터들과 기능을 하나로 묶어 관리하는 기법. 클래스의 가장 중요한 목적인 데이터의 직접 접근제한을 원칙으로 하여 클래스 외부에서 데이터의 직접적인 접근을 막고, 대신 간접적으로 데이터에 접근할 메소드를 클래스 내부에 작성하는 방법 

 

* 상속 : 상속은 부모가 자식에게 물려주는 행위를 말한다. 객체 지향 프로그램에서도 부모 클래스의 필드와 메소드르 자식 클래스에게 물려줄수 있다.  상속은 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 중복되는 코드를 줄여 개발시간을 단축시키는 장점이 있다. 

* 다형성 : 다형성이란 사용방법은 동일하지만 실행 결과가 다양하게 나오는 성질을 말한다. 다형성을 구현하기 위해서는 자동 타입변환과 메소드 재정의가 필요하다. 

 

* 추상화 : 유연성을 확보하기 위해 구체적인것은 제거한다는 의미. 작성하려는 클래스의 속성과 기능 중 프로그램에서 필요한 공통점을 추출하고, 불필요한부분을 제거하는 과정 

 

 

 

 

객체(Instance)의 할당 

 

 

- new 연산자와 생성자를 사용해서 객체 생성시 Heap 메모리 영역에 서로 다른 자료형의 데이터가 연속으로 나열/할당된 객체 공간 

 

 

 

 

 

 

*** 객체지향 언어 - 종합정리 ***

 

 

현실에서 존재하는 독립적이면서 하나로 취급되는 사물이나 개념으로 객체 지향 언어에서 객체의 개념은 클래스에 정의된 내용대로 메모리에 할당된 결과물(Object) 

 

 

 

 

'JAVA' 카테고리의 다른 글

▶︎회원가입◀︎  (0) 2023.05.02
▶︎클래스◀︎  (0) 2023.04.30
▶︎2차원 배열◀︎  (0) 2023.04.27
▶︎배열◀︎  (0) 2023.04.24
►반복문◀︎  (0) 2023.04.21