switch

JAVA OOP 객체지향 프로그래밍 [1. 상속] 본문

java

JAVA OOP 객체지향 프로그래밍 [1. 상속]

5witch 2022. 5. 12. 11:10

객체지향 프로그래밍에는 4가지 핵심 요소가 있음

 

1. 상속

2. 캡슐화

3. 다형성

4. 추상화

 

 

이 글에서는 상속에 대해 다룰 것임

 

 

상속은 코드의 재사용, 다형적 표현이 가능한 장점이 있음

다형적 표현이란 하나의 객체가 여러 모양으로 표현될 수 있다는 것을 의미함

 

 

상속의 개념은 말 그대로 부모 클래스에서 자식 클래스로 상속받는 개념인데..

개인적으로 상속이라는 표현보다 확장이라는 표현이 더 자연스러운듯함

 

 

 

자바에서 상속은

class 클래스 extends 상위클래스 {}

이런 식으로 사용하면 된다

 

js랑은 비슷하지만 파이썬에서 class 클래스(상위 클래스):

로 사용하는 방식과는 조금 다르게 생김.,

 

 

상속받은 클래스는 super 키워드로 상위 클래스의 객체를 사용할 수 있고,

super()로 상위 클래스의 생성자도 사용할 수 있다.

 

 

 

object클래스

모든 자바의 클래스에는 기본적으로  object클래스를 상속받는다

상속받는 게 없는 클래스도 자동으로 이걸 상속 받음

 

object 클래스는 기본적으로 아래의 메서드를 지원함

 

toString() 객체 정보를 String으로 출력
equals(Object obj) 등가 비교 연산(==)과 동일하게 스택 메모리값을 비교
hashCode() 객체의 위치정보 관련. Hashtable 또는 HashMap에서 동일 객체 여부 판단
wait() 현재 스레드 일시정지
notify() 일시정지 중인 스레드 재동작

 

 

Comments