[아이폰] - 스위프트 클래스 생성 및 생성자와 초기화
○ 스위프트 클래스 생성 및 생성자와 초기화 |
클래스 생성 및 초기화(제품 생성을 위한 일종의 설계도면) // 클래스 생성(최상위 클래스는 NSObject이다) class 클래스이름 : 부모클래스이름 { 속성 메소드 } // 생성자 두 종류(값이 들올 때, 값이 들오지 않을 때) init() convenience override init() // ex1) 불이 켜있으면 true 꺼있으면 false 하는 클래스 생성 class MyLight : NSObject { // 속성 var status : Bool var lightColor : String // 속성에 초기값 없으면 생성자들 반드시 만들어줘야한다!!! // 초기화 init(status:Bool, lightColor:String){ self.status = status self.lightColor = lightColor super.init() // 자바는 super가 먼저지만 swift는 맨 마지막에 넣어야한다(아님 에러) } // 초기값이 없는 파라매터가 들올때는 이걸 사용한다(아무것도 들어오지 않을 때) convenience override init() { self.init(status:false, lightColor:"white") } // 함수 func turnOnLight(){ self.status = true } func turnOffLight(){ self.status = false } func lightStatus(){ if self.status == true // self.status 만 해도 된다 그럼 true다(but 쓰는게 보기좋다) { print("불 켜짐") self.printLightColor() } else { print("불 꺼짐") } } func printLightColor() { print("색상은 \(lightColor)") } } // 인스턴스 생성 let light1 = MyLight() light1.turnOnLight() light1.lightStatus() let light2 = MyLight(status: true, lightColor: "Blue") light2.turnOnLight() light2.lightStatus() let light3 = MyLight() light3.turnOffLight() light3.lightStatus() |
'아이폰' 카테고리의 다른 글
[아이폰] - 스위프트 클래스(Class) 생성 및 초기화 (0) | 2018.10.16 |
---|---|
[아이폰] - 간단한 계산기 예제 (0) | 2018.09.28 |
[아이폰] - 스위프트 함수 생성 및 호출, 옵셔널(nil) 기능 (0) | 2018.09.28 |
[아이폰] - 스위프트 반복문, 분기문, 문자열 배열, 숫자 배열 (0) | 2018.09.28 |
[아이폰] - 간단한 환율 계산 예제 (0) | 2018.09.28 |