'클래스 사용'에 해당되는 글 1건

  1. 2021.01.27 클래스

클래스

Swift/문법 2021. 1. 27. 17:17

클래스

- 클래스는 구조체와 유사함

- 구조체는 값 타입, 클래스는 참조 타입

- Swift의 클래스는 다중 상속이 안됨

 

 

프로퍼티 및 메서드

class Sample {

var mutableProperty: Int = 100 // 가변 프로퍼티

let immutableProperty: Int = 100 // 불변 프로퍼티

 

static var typeProperty: Int = 100 // 타입 프로퍼티

 

// 인스턴스 메서드

func instanceMethod() {

print("instance method")

}

 

 

타입 메서드

* 재정의 불가 타입 메서드 - static

static func typemethod() {

print("type method - static")

}

 

* 재정의 가능 타입 메서드 - class

class func classMethod() {

print("type method - class")

}

 

 

클래스 사용

var mutableReference: Sample = Sample()

 

mutableReference.mutableProperty = 200

 

let immutableReference: Sample = Sample()

 

immutableReference.mutableProperty = 200

 

import Foundation

struct Student {
    var name: String = "unknown"
    var 'class' = String = "Swift"
    
    // 타입 메서드
    static func selfIntroduce() {
        print("학생 타입 입니다")
    }
    
    // 인스턴스 메서드
    func selfIntroduce() {
        print("저는 \(self.class)반 \(name)입니다")
    }
}

Student.selfIntroduce() // 학생 타입 입니다

var khon: Student = Student()
khon.name = "khon"
khon.class = "스위프트"
khon.selfIntroduce() // 저는 스위프트반 khon입니다

let khon3: Student = Student()
khon3.name = "khon3"
khon3.selfIntroduce() // 저는 Swift반 unknown입니다

'Swift > 문법' 카테고리의 다른 글

값 타입과 참조 타입(value type / reference type)  (0) 2021.01.27
열거형(enum)  (0) 2021.01.27
구조체  (0) 2021.01.27
옵셔널 추출(Optional Unwrapping)  (0) 2021.01.27
옵셔널(Optional)  (0) 2021.01.27
Posted by khon98
,