1. 상속
부모 클래스 ( super )

자식 ( sub )

- 부모의 메서드, 프로퍼티를 사용 할 수 있다.
슈퍼클래스의 함수를 재정의 하려면 오버라이딩이 필요

자식에서 원래 부모의 매서드를 호출 하려면 super 키워드 사용

부모의 프로퍼티 오버라이드 ( setter , gettet , observer 를 재정의 하는것을 의미 )
- 슈퍼클래스의 프로퍼티와 이름과 타입이 동일 해야 오버라이드가 가능하다 .

옵져버 오버라이드

키워드 앞에 final을 추가하는 경우 오버라이드를 할 수 없다 .
2. 타입 캐스팅 ( is , as )

사용 예시

다운 캐스팅 예시 ( as? as! )
- 런타임 에러에 주의

3. assert 와 guard

assert
- 조건이 만족하지 않으면 런타임 에러와 함께 메세지를 출력 한다.

guard
- 함수 내부에서 사용


4. 프로토콜


클래스는 상속 받을 클래스가 있다면 먼저 앞에 써줘야 한다.

프로퍼티 요구 사항 ( 프로퍼티의 이름과 타입, 읽기 쓰기 여부 만 작성 )

사용예시

프로토콜 준수 예

메서드 요구사항

init 요구사항
- 구조체에서는 requird 키워드를 사용할 필요 없다
- 클래스에서는 프로토콜의 생성자를 사용하려면 requird를 사용해야한다.

5. 익스텐션

추가 할수 있는 기능
- 기존 기능을 오버라이딩 할수는 없다 .

사용 예시


함수 확장


6. 열거형 ( enum )
- 연관성있는 값들을 모아놓음
- 새로운 타입 하나를 만든다고 생각하면 된다.
선언

사용

사용예시


7. 옵셔널 체이닝


8. try- catch
오류 생성

do - catch


9. 클로져
- 익명 함수
- 네임드 클로저 / 언네임드 클로저 ( 주로 언네임드를 말한다 )

일급 객체란?

노란색 - 클로저 헤드
빨간색 - 클로저 바디
구분 키워드 in

매개값 없고, 리턴타입 없고

파라미터와 리턴 타입이 있는경우
- 전달인자 레이블을 적으면 안됨

클로저를 함수의 파라미터로 전달하는 경우

클로저를 반환하는 함수

다중 후행 클로저

클로저 간소화

10. 고차함수

스위프트에서 제공하는 고차함수



'IOS' 카테고리의 다른 글
| XX캠퍼스 강의 - ch05 _ NavigationController (0) | 2022.06.07 |
|---|---|
| XX캠퍼스 강의 - ch04 _ UIKit (0) | 2022.06.07 |
| XX캠퍼스 강의 - ch04 _xcode (0) | 2022.06.07 |
| XX캠퍼스 강의 - ch02 _Swift 기본 문법(2) (0) | 2022.06.02 |
| XX캠퍼스 강의 - ch01 _Swift 기본 문법(1) (0) | 2022.05.31 |