Swift/Swift-Basica
Swift (5) - Class
peter.j
2022. 8. 19. 22:19
1. 클래스 정의
Swift의 기본적인 클래스 정의는 다음과 같습니다.
/* 클래스 정의 */
class 클래스이름 {
/* 프로퍼티 정의 */
var property: PropertyType
/* 생성자 정의 : 생성자가 있을 경우에는 반드시 생성자를 통해서 인스턴스가 생성됩니다. */
init(p: PropertyType) {
self.property = p
}
/* 메서드 정의 */
func method(param: ParamType) -> MethodType {
return "반환값"
}
}
/* 인스턴스 생성 및 사용 */
var instance: 클래스이름 = 클래스이름(p : "초기프로퍼티 값")
instance.property = "가변프로퍼티 변경값"
instance.method(param : "메서드 호출")
💡 XCode 개발시 println 표준 출력 함수를 사용하는데, Xcode의 플레이 그라운드에서 실행하는 경우, "Assistant Editer“라는 것을 표시하는 것이 편리합니다.
Xcode의 상단탭 - [View] - [Assistant Editor] - [Show Assistant Editor]를 누르면 우측에 Assistant Editor가 나타나고, 표준 출력 함수가 호출되면 Console Output에 출력됩니다.
2. 클래스 상속
class Friend {
var name:String
init(name:String) {
self.name = name
}
func say(){
print("Hello, " + name + "!");
}
}
class BestFriend : Friend {
var age:Int
init(name:String, age:Int) {
self.age = age
super.init(name:name)
}
func say(){
print("What's up, " + name + "!");
}
}
3. 프로퍼티의 getter 및 setter
Swift에서는 Computed 속성(프로퍼티)라고 부릅니다.
var 속성 : 타입 {
get {
... 처리 ...
return 값
}
set {
... 처리 ...
}
}
4. Static 메서드 및 Static 프로퍼티
Swift에서는 유형 속성과 유형메서드라고 부릅니다.
메서드와 프로퍼티 선언 앞에 class를 붙이면 static하게 동작합니다.
class Exchange {
class var rate:Double {
return 1005.0
}
class func DollarToWon(d:Double)->Int {
return Int(d * rate)
}
class func WonToDollar(y:Int)->Double {
return Double((y * 100) / Int(rate)) / 100
}
}
print(Exchange.DollarToWon(1.5))
print(Exchange.WonToDollar(1500))
참고
https://www.devkuma.com/docs/swift/%ED%81%B4%EB%9E%98%EC%8A%A4-%EA%B8%B0%EB%B3%B8/
사업자 정보 표시펼치기/접기
1 | g | asdf | 사업자 등록번호 : 123-12-12345 | TEL : 010-111-1111 | Mail : asdf@gmail.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기