abstract class (2) 썸네일형 리스트형 [Kotlin] 객체지향 프로그래밍 - 추상클래스와 인터페이스 개요 오늘은 코틀린의 추상 클래스(Abstract Class)와 인터페이스(Interface)에 대해서 알아보도록 하겠습니다. 코틀린의 추상 클래스(Abstract Class) 지난 포스팅에서는 코틀린의 상속에 대해서 알아보았습니다. 객체지향 프로그래밍에서 상속은 반복되는 코드의 작성을 줄여주고 유지 보수성을 편리하게 하는 이점이 있습니다. 그런데, 다음의 상황을 한 번 생각해보도록 하겠습니다. 코틀린 개발자가 자동차 시뮬레이션 프로그램을 만들기 위해 멋진 객체를 설계해보려고 합니다. 시뮬레이션 프로그램에서는 일반 자동차뿐만 아니라 이륜 오토바이도 함께 주행 테스트를 해야 한다고 합니다. 이때 자동차와 오토바이는 모두 엔진을 가지고 있으므로 공통점이 있지만, 자동차는 4기통 엔진이 들어가고, 오토바이는 .. Chapter 10. 추상클래스(Abstract class) 10. 1. 추상클래스(Abstract class)란? 자바에서 일반 클래스는 필드와 메소드 구성되어 있습니다. 그런데 지난 챕터에서 언급한 객체지향 프로그래밍에 대해서 잠시 생각을 해보자면, 반복된 코드를 줄이고 기존에 작성된 코드를 재활용해서 사용할 수 있는 방법으로 상속(Inheritance)이 있었습니다. 그런데, 상속의 단점은 부모 클래스에서 작성한 그대로 사용해야 한다는 것입니다. 그렇다면, 방법은 한가지, 메소드를 재정의 하는 오버라이딩(Overriding)을 사용하면 되지 않을까요? 그런데, Overriding을 그대로 사용하기에는 귀찮은 점이 하나가 아닙니다. 어노테이션이 있다고 하더라도, 접근 제한자도 알아야 하고 리턴타입은 뭔지 함수명은 뭐였는지 일일이 찾는다면 얼마나 번거로울까요? .. 이전 1 다음