import Swift
struct Sample {
var mutableProperty: Int = 100 // 가변 프로퍼티
let immutableProperty: Int = 100 // 불변 프로퍼티
static var typeProperty: Int = 100 // 타입 프로퍼티
// 인스턴스 메서드
func instanceMethod() {
print("instance method")
}
// 타입 메서드
static func typeMethod() {
print("type method")
}
}
// 가변 인스턴스
var mutable: Sample = Sample()
mutable.mutableProperty = 200
// mutable.immutableProperty = 200
// 불변 인스턴스
let immutable: Sample = Sample()
// immutable.mutableProperty = 200
// imuutable.immutablePropery = 200
// 타입 프로퍼티 및 메서드
Sample.typeProperty = 300
Sample.typeMethod() // type property
// mutable.typeProperty = 400
// mutable.typeMethod()
struct Student {
var name: String = "unknown"
var `class`: String = "Swift"
static func selfIntroduce() {
print ("학생타입입니다")
}
func selfIntroduce() {
print("저는 \(self.class)반 \(name)입니다")
}
}
Student.selfIntroduce() // 저는 swift반 real_name입니다
var real_name: Student = Student()
real_name.name = "real_name"
real_name.class = "swift"
real_name.selfIntroduce()
let jina: Student = Student()
// 불변 인스턴스이므로 프로퍼티 값 변경 불가
// 컴파일 오류 발생
//jina.name = "jina"
jina.selfIntroduce()
'Swift > 기초&문법' 카테고리의 다른 글
스위프트 swift 열거형 enum (0) | 2018.08.21 |
---|---|
스위프트 swift 클래스 class (0) | 2018.08.21 |
스위프트 swift 옵셔널 추출 (0) | 2018.08.15 |
스위프트 swift 옵셔널 (0) | 2018.08.14 |
스위프트 swift 반복문 (0) | 2018.08.14 |