결합관계
class Address(val streetNum : Int, val city : String)
class Student (val name : String, val addr : Address)
val addr = Address(1, "진주")
// 결합관계
val obj = Student("수민", addr) // Student클래스의 객체를 생성할 때 Address 객체를 사용
조합관계
class CarEngine {
fun startEngine(){
println("엔진 가동")
}
}
class Car(val color : String, maxSpeed : Int){
// 클래스 내부에서 CarEngine 클래스 객체 선언
// 주종관계를 가짐
lateinit var carEngine : CarEngine
fun startCar() {
carEngine = CarEngine()
carEngine.startEngine()
}
}
val car1 = Car("Red", 240)
// Car 클래스의 메서드로 CarEngine 클래스의 메서드 실행
car1.startCar()
엔진 가동
의존 관계