Dev36 Swift: 접근 제어(access control, access modifier) DAY 16 접근 제어(access control, access modifier) access modifier 접근 속성(접근 수정자, 액세스 수정자, 액세스 지정자)는 클래스, 메서드, 멤버의 접근 가능성을 설정하는 객체 지향 언어의 키워드 구성 요소를 캡슐화 하는 데 사용한다 Keyword C# C++ Java private class class and/or friend classes class protected derived classes derived classes and/or friend classes derived classes and/or within same package package - - within its package internal same assembly - - public e.. Dev/Swift 2023. 5. 15. Swift: extension DAY 15 extension extension 클래스, 구조체, 열거형, protocol에 새로운 기능을 추가하는 것 extension은 하위 클래스를 생성하거나 참조하지 않고 기존 클래스에 메서드, 생성자(initializer), 계산 프로퍼티 등의 기능을 추가하기 위하여 사용함 스위프트 언어의 built-in 클래스와 iOS 프레임워크에 내장된 클래스에 기능을 추가할 때, extension을 이용하면 매우 효과적임 extension 기존타입이름 { // 새로운 기능 } Int 자료형에 extension 이용하여 computed property 추가하기 짝수인지 판별하는 isEven 과 홀수인지 판별하는 isOdd 추가하기 extension Int { var isEven: Bool { return s.. Dev/Swift 2023. 5. 15. Swift: 상속(Inheritance) DAY 13 상속(inheritance) superclass(부모 class) 와 subclass(자식 class) 상속된 클래스는 부모 클래스의 모든 기능을 상속받으며, 자신만의 기능을 추가 상속받은 클래스들을 하위 클래스(subclass) 또는 자식 클래스(child class) 하위 클래스가 상속받은 클래스는 부모 클래스(parent class) 또는 상위 클래스(super class) Swift 상속 단일 상속(single inheritance) Swift에서 하위 클래스는 단 하나의 부모 클래스만 상속받을 수 있음 class 자식: 부모 { } 부모 클래스는 하나만 가능 콜론 다음이 여러 개이면 나머지는 프로토콜 class 클래스명: 부모명, 프로토콜명{} class 클래스명: 프로토콜명{} 상.. Dev/Swift 2023. 5. 15. Swift: 클래스(Class) DAY 12 클래스(class) 클래스 vs 객체 vs 인스턴스 클래스로부터 객체를 만들고 만들어진 실제 메모리상에 할당된 객체를 instance 라고 함 인스턴스(Instance) 소프트웨어 애플리케이션을 개발하는 데 사용되는, 쉽게 사용할 수 있으며 재사용할 수 있는 기능을 가진 모듈 객체의 구성 데이터 변수(data variable) or 속성(property) 함수 or 메서드(method) Theory Swift Java C++ Data Property Field Member variable Operation Method Method Member function 클래스 Structures and Classes 구조체와 열거형은 Value Types, 클래스는 Reference Types 일반적인.. Dev/Swift 2023. 5. 14. Swift: 클로저(Closure) DAY 11 클로저(Closure) 클로저 표현식 클로저란? 익명 함수 C, C++, Objective-C의 block Java Lambda function C# Delegates 클로저 표현식은 독립적인 코드 블록 func add(x: Int, y: Int) -> Int { return(x+y) } print(add(x:10, y:20)) let add1 = { (x: Int, y: Int) -> Int in return(x+y) } print(add1(10, 20)) 클로저 표현식은 매개변수를 받거나, 값을 반환하도록 만들 수도 있음 {(: , ...) -> in // 클로저 표현식 코드 } 후행 클로저(trailing closure) 클로저가 함수의 마지막 argument라면 마지막 매개변수 이름을.. Dev/Swift 2023. 5. 14. 이전 1 2 3 4 5 6 7 8 다음