본문 바로가기

클래스

상속 상속스위프트의 상속은 클래스, 프로토콜 등에서 가능합니다. 열거형, 구조체는 상속이 불가능합니다. 스위프트는 다중상속을 지원하지 않습니다. 이번 파트에서는 클래스의 상속에 대해서 알아봅니다 소스코드 클래스의 상속과 재정의상속 문법class 이름: 상속받을 클래스 이름 { /* 구현부 */ } // 기반 클래스 Person class Person { var name: String = "" func selfIntroduce() { print("저는 \(name)입니다") } // final 키워드를 사용하여 재정의를 방지할 수 있습니다 final func sayHello() { print("hello") } // 타입 메서드 // 재정의 불가 타입 메서드 - static static func typeMeth.. 더보기
클래스, 구조체, 열거형 비교 Class vs Struct/Enum 소스코드 열거형과 구조체는 값 타입이며, 클래스는 참조 타입이라는 것이 가장 큰 차이입니다. 또한, 클래스는 상속이 가능하지만 구조체와 열거형은 상속이 불가능합니다.struct ValueType { var property = 1 } class ReferenceType { var property = 1 } // 첫 번째 구조체 인스턴스 let firstStructInstance = ValueType() // 두 번째 구조체 인스턴스에 첫 번째 인스턴스 값 복사 var secondStructInstance = firstStructInstance // 두 번째 구조체 인스턴스 프로퍼티 값 수정 secondStructInstance.property = 2 // 두 번째 구조.. 더보기
클래스 클래스 소스코드 정의 문법클래스는 참조 타입입니다. 타입이름은 대문자 카멜케이스를 사용하여 정의합니다.class 이름 { /* 구현부 */ } 프로퍼티 및 메서드 구현클래스의 타입 메서드는 두 종류가 있습니다. 상속 후 재정의가 가능한 class 타입메서드, 상속 후 재정의가 불가능한 static 타입메서드가 있습니다. 자세한 내용은 상속 부분에서 다시 다룹니다.class Sample { // 가변 프로퍼티 var mutableProperty: Int = 100 // 불변 프로퍼티 let immutableProperty: Int = 100 // 타입 프로퍼티 static var typeProperty: Int = 100 // 인스턴스 메서드 func instanceMethod() { print("inst.. 더보기
Swift - 구조체 클래스 오늘의 주제 1. 구조체 2. 클래스 안녕하세요, 야곰입니다. 지난 포스팅에서는 스위프트의 함수와 함께 스위프트에서 제공하는 컬렉션 타입에 대해 알아봤습니다. 2017/01/23 - [Swift] - Swift란 어떤 언어인가?2017/01/25 - [Swift] - Swift 기초문법 - 변수, 상수, 기초 데이터 타입2017/02/06 - [Swift] - Swift - 함수, 콜렉션 타입 이번에는 스위프트의 구조체와 클래스에 대해 알아보겠습니다 :) 구조체와 클래스구조체와 클래스는 프로그래머가 데이터를 용도에 맞게 묶어 표현하고자 할 때 용이합니다. 구조체와 클래스는 프로퍼티와 메서드를 사용하여 구조화된 데이터와 기능을 가질 수 있습니다. 하나의 새로운 사용자정의 데이터 타입을 만들어 주는 것입니다.. 더보기
Objective C <9>. 상속(1) 오늘의 주제 1. 상속의 개념 아홉번째 시간입니다.^^ Objective-C는 정말 오랜만이네요..^^ 초코찌찌님의 요청으로 새로운 개념을 하나 가지고 왔습니다~ 지난 번에는 메소드에 대해 알아보았습니다~ 이번에는 클래스의 상속에 대해 알아보도록 합니다.^^ 이 포스팅은 지난 2012/01/30 - [Objective-C] - Objective C . 클래스와 객체(인스턴스)2012/02/05 - [Objective-C] - Objective C . 클래스와 객체(인스턴스)이 두개의 포스팅 지식을 필요로 합니다~ 다 알고 계신가요?ㅎ 그렇다면 고고고고고고고고~~~~~~무비무비무비~~~~~~ # 상속이란? 상속이란 무엇일까요? 저는 쉽게 한마디로 말하면, 클래스의 확장 이라고 표현하고 싶네요. 즉, 이미 .. 더보기
Objective C <6>. 클래스와 객체(인스턴스)<2> 오늘의 주제 1. Class 만들어보기 2. Class Method, Getter, Setter, Instance Method... 여섯 번째 시간입니다.^^ 지난 번에클래스와 인스턴스에 관한 개요를 알아보았습니다. 하지만, 말로만 듣고는 잘 감이 안오시지요? 물론 이번 포스팅을 보아도 아리송 하실 수 있습니다. 정말 짧은 코드이지만 많은 내용이 담겨져 있으니 이번 포스팅도 보고 또 보셔야 할 듯 합니다^^ 정말 중요한 것이니 몇 번을 보고, 다른 싸이트를 검색하고, 직접 계속 둘러보면서 꼭 몸으로 익히도록 하세요~! 자 그럼 오늘은 직접 클래스를 한 번 만들어 보도록 합시다~ 출바알~~~~~~~~~~~~ # Class 만들어 보기 자... 새로운 프로젝트를 만들고 아래 그림처럼 새로운 클래스 생성을 위.. 더보기
Objective C <5>. 클래스와 객체(인스턴스)<1> 오늘의 주제 1. Class? Object? 다섯 번째 시간입니다.^^ 이제까지는 정말 Objective C를 배웠다고 하지도 못할 정도로 아주 기초적인 내용을 다루어 보았습니다. 지난 번에는 실수 표현방법에 대해 알아보았습니다. 조금 도움이 되셨는지요?? 나중에 언젠가는 꼭 필요한 날이 올테니 알아두시길~!^^ 지금부터 몇 번에 걸쳐 포스팅할 내용들(클래스, 메소드, 인스턴스 등등)의 내용만 이해를 하신다면, "나 Objective C 70%는 이해했어" 라고 말하실 수 있을거예요. 정말 중요한 것이니 몇 번을 보고, 다른 싸이트를 검색하고, 직접 계속 생각하며 익히도록 하세요~! iOS Dev 포스팅의 클래스와 객체 챕터를 인용하여 조금 더 설명을 추가하여 보았습니다. 힘겨운 발걸음을 한 번 떼어 볼.. 더보기