2020/07/27 2

코틀린 생성자와 위임

주 생성자와 부 생성자 2가지로 나뉘며, 주 생성자는 클래스 선언 시 가시성 접근자(없으면 클래스 명) 뒤에 선언한다. class Car private constructor(_name: String) 자바는 부 생성자 처럼 클래스 내부에 선언 한다 private class Car { class(String name) } 부 생성자는 클래스 내부에서 파라미터를 달리하여 만든다. class Car private constructor(_name: String) { constructor(value: Int)} 클래스 생성 시 생성자를 정의하지 않으면 컴파일러는 인자가 없는 디폴트 생성자를 만든다 주 생성자 class Car constructor(_name: String){ val name : String ini..

추상클래스(abstract)와 인터페이스(interface)

차이점 추상 클래스는 상속과 필수구현을 위해 인터페이스는 필수구현을 위해 추상 클래스 클래스 내에 추상 메서드가 하나 이상 포함 되거나, abstract 로 정의 된 경우 추상 메서드가 하나라도 있으면 class 앞에 abstract 를 붙여야 함 추상 메서드는 구현 되지 않으며 상속받은 클래스에서만 구현되어야 한다. abstract 에는 final 을 붙일 수 없다. 이미 open 이다 생성자, 전역 변수도 선언 할 수 있고, 메서드 내용이 있을 수도 있다. 다중 상속 안됨 추상 클래스는 직접 생성될 수 없으며, 다른 클래스를 통해 생성되어야 한다. 직접 Car() 로 생성하면 아래와 같은 에러가 나타난다. Cannot create an instance of an abstract class abstra..

반응형