Tech/Javascript

[Javascript] 상속(Inheritance)

lonnie(동현) 2021. 1. 2. 20:04

1. Javascript 에서 상속을 사용하는 이유?

 어떤 클래스의 원래의 기능을 최소한으로 유지하면서, 새로운 기능을 추가하고 싶은데 클래스 안에 코드를 추가하기에는 너무 부담스러울 때 상속을 사용하게 된다. 물론 코드를 복사해서 새로운 클래스를 만들 수 있지만, 그 경우에는 중복이 발생하기 때문에 상속이 필요한 것이다.


2. 상속의 사용 

 예를 들어, 이 Person이라는 클래스에 평균을 내는 method를 추가하고 싶다고 해보자.

Person 이라는 클래스 선언

이를 복사해서 새로운 클래스를 하나 더 만들어서 avg method를 정의한다.

avg method를 추가한 PersonPlus 클래스 선언

 하지만, 중복된 코드를 제거하고 싶다는 생각이 들기 시작한다. 그래서 사용하는 것이 상속(inheritance)이다. PersonPlus라는 클래스는 Person이라는 클래스를 확장했다는 의미이다. 이를 통해서, Person 클래스가 가지고 있는 여러 요소들이 PersonPlus에 상속되게 된다.

PersonPlus 가 Person에 상속된 것

 이를 통해서 Person 이라는 클래스를 확장할 수 있고, 중복을 제거할 수 있다. 또한 PersonPlus는 Person에 의해 상속받았기 때문에 Person의 요소가 변화하게 되면 PersonPlus 에도 영향을 주게 된다. 이를 통해서 유지 보수의 편의성 또한 도모할 수 있게 된다.

728x90
반응형