객체지향 언어 특징들을 다룬 좋은 블로그가 있어 간단하게 정리해보았다. 요약이니 각 포스팅을 들어가서 자세하게 공부하자
https://codevang.tistory.com/78?category=827598
객체지향 언어의 특징(추상화) [1/4]
그럼 객체지향언어가 가지고 있는 대표적인 특징을 기준으로 C언어와 Java를 비교해보겠습니다. 1. 추상화 (Abstract) 중요한 정보만을 표현함으로써 공통의 속성이나 기능을 묶어 이름을 붙이는
codevang.tistory.com
추상화
- 어떠한 정보를 묶음으로 표현할 때 우리가 필요한 정보들의 형태만 모아서 선언해주는 것.
- 다시말해, 수많은 정보 중 클래스의 기능을 수행하기 위해 꼭 필요한 정보와 행위를 묶어서 설계하는 것
- Java에서는 하나의 객체를 추상화하여 클래스를 만든다고 표현함
- 추상클래스 특징
- abstract 키워드를 붙임
- 메소드를 구현하지 않고 자식클래스에서 구현함.
- 추상클래스로 인스턴스를 생성할 수 없다.
https://codevang.tistory.com/79?category=827598
객체지향 언어의 특징(캡슐화) [2/4]
2. 캡슐화 내부의 동작 방법을 단단한 케이스 안으로 숨기고 사용자에게는 사용방법만을 노출시킨다. 중요 정보를 숨겨(정보 은닉) 잘못된 수정을 막고, 사용자가 쉽게 사용할 수 있도록 만들어
codevang.tistory.com
캡슐화(정보의 은닉화)
- 내부의 동작 방법을 단단한 케이스 안으로 숨기고 사용자에게는 사용방법만을 노출시킨다.
- 중요 정보를 숨겨(정보 은닉) 잘못된 수정을 막고, 사용자가 쉽게 사용할 수 있도록 만들어 줌
- 접근제어자 private를 사용한다. ※private: 해당 클래스에서만 접근 가능
https://codevang.tistory.com/80?category=827598
객체지향 언어의 특징(상속) [3/4]
3. 상속 재사용성을 극대화시키기 위한 장치 부모 클래스의 속성을 그대로 물려받음 (물론 설정에 따라 완전히 같지 않을 수 있음) 상속의 개념은 매우 쉽습니다. 자식 클래스는 부모 클래스의
codevang.tistory.com
상속
- 재사용성을 극대화시키기 위한 장치
- 부모 클래스의 속성을 그대로 물려받음
- extends 키워드를 사용하여 상속받음
- 클래스 생성 시 필드는 private으로 생성하는 것이 좋다. -> 자식 클래스 또는 다른 클래스에서 데이터에 직접 접근하는 것을 방지하기 위해서
- 값을 가져오는 것을 "getter", 값을 변경하는 것을 "setter" 메소드 사용
https://codevang.tistory.com/81?category=827598
객체지향 언어의 특징(다형성) [4/4]
4. 다형성 하나의 클래스나 메소드가 다양한 방식으로 동작이 가능한 것을 의미 부모클래스가 자식클래스의 값으로 대체되는 오버라이딩 같은 메소드의 매개변수(parameter)에 따라 다르게 동작하
codevang.tistory.com
다형성
- 하나의 클래스나 메소드가 다양한 방식으로 동작이 가능한 것을 의미
- 부모클래스가 자식클래스의 값으로 대체되는 오버라이딩
- 같은 메소드의 매개변수(parameter)에 따라 다르게 동작하는 오버로딩
'JAVA > JAVA' 카테고리의 다른 글
[JAVA] 컬렉션(Collection) - Set (0) | 2021.11.23 |
---|---|
[Java] 컬렉션(Collection) - 리스트(List): ArrayList, LinkedList, Vector (0) | 2021.11.16 |
[JAVA] 추상클래스(Abstract class), 인터페이스(Interface) (0) | 2021.11.15 |
[JAVA] 정보의 은닉화(캡슐화), Getter와 setter (0) | 2021.11.10 |
[JAVA] 클래스의 구성 멤버 (0) | 2021.11.10 |