Notice
Recent Posts
Recent Comments
Link
투케이2K
13. (swift/xcode) class 클래스 상속 (overriding) 및 메소드 재정의 override 수행 실시 본문
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
/*
[요약 설명]
1. class 자식:부모 - 방식으로 클래스간 상속을 실시합니다
2. override 는 상속받은 메소드를 재정의할 때 사용합니다
3. super 는 부모를 상속받은 자식쪽에서 다시 부모를 호출할 때 사용합니다 (부모 지정)
*/
// [부모 class 클래스 생성 실시]
class Parent {
// 메소드 정의 실시
func one_excute(){
print("Parent >> one_excute()")
}
// 메소드 정의 실시
func two_excute(){ }
// 메소드 정의 실시
func three_excute(){
print("Parent >> three_excute()")
}
}
// [자식 class 클래스 생성 실시 : Parent 클래스 상속 받음]
class Child : Parent {
//override 사용해 부모 클래스 메소드 재정의 실시
override func two_excute(){
print("Child >> two_excute()") // 자식에서 재정의 로직
}
//override 사용해 부모 클래스 메소드 재정의 실시
override func three_excute(){
super.three_excute() // 먼저 기존 부모 호출
print("Child >> three_excute()") // 자식에서 재정의 로직
}
}
// [테스트 메인 함수 정의 실시]
func testMain(){
print("[Program Start]")
print("")
// [자식 클래스 객체 생성 실시]
let childClass = Child()
// [자식 메소드 호출 실시]
childClass.one_excute() //자식쪽에서는 부모를 상속받았기 때문에 부모 메소드 즉시 호출 가능합니다
childClass.two_excute() //자식쪽에서 재정의한 메소드 호출
childClass.three_excute() //자식쪽에서 재정의한 메소드 호출
}
[결과 출력]
[요약 설명]
/*
[요약 설명]
1. class 자식:부모 - 방식으로 클래스간 상속을 실시합니다
2. override 는 상속받은 메소드를 재정의할 때 사용합니다
3. super 는 부모를 상속받은 자식쪽에서 다시 부모를 호출할 때 사용합니다 (부모 지정)
*/
반응형
'Swift' 카테고리의 다른 글
Comments