일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 2차원 객체배열
- 자료불러오기
- 상속
- EC2
- guard
- 차이점
- 클래스
- amazon
- Spring
- bootstrap
- PHP
- Xcode
- Java
- Gradle
- 옵셔널
- 전의 의존성
- class
- SWiFT
- switch-case
- DatePicker
- CodeIgniter
- jQuery
- 제어문
- 클래스의 정의
- CKEditor4
- 함수
- programmers
- 사용법
- AWS
- 객체
Archives
- Today
- Total
not bad 한 개발
Swift - overloading(생성자 중첩) 본문
(인덕대학교 컴퓨터소프트웨어학과 iOS프로그래밍기초(21-2학기)한성현 교수님 강의 내용을 변형 및 요약 했습니다.)
overloading(생성자 중첩)
- 같은 이름의 메서드 여러 개를 가지면서 매개변수의 유형과 개수가 달라지도록 하는 기술입니다.
- 매개변수의 개수와 자료형이 다른 같은 이름의 함수를 여러 개 정의하는 것 입니다.
- 매개변수가 다른 두 생성자를 통해 두가지 방법으로 인스턴스를 만들 수 있습니다.
- iOS앱에서 이미지를 관리하는 클래스 UIImage는 15개의 init()가 overloading되어 있습니다.
(overloading 예제)
class woMan {
var age1 :Int = 10
var weight2 :Double = 70.5
func disPlay (){
print ("나이:\(age1), 무게:\(weight2)")
}
init (myAge :Int , myWeight :Double ){
self.age1 = myAge
self.weight2 = myWeight
}
init (age1 :Int ){
self.age1 = age1
}
}
//같은 이름의 함수가 여러 개 오는게 가능한데 이를 method overloading이라고 합니다.
//함수의 이름이 같으면 소스 분석이 훨씬 편해집니다.
//가장 많이 사용하는 부분은 생성자 중첩 입니다.
//생성자 중첩을 하는 이유는 사용자의 요구에 반영해서
//객체 인스턴스를 만들기 위해 사용합니다.
var Lee : woMan = woMan (myAge :31 , myWeight :60.5 )
var Lee1 : woMan = woMan (age1 :31 )
Lee.disPlay ()//나이:31, 무게:60.5
Lee1.disPlay ()//나이:31, 무게:70.5
'Swift' 카테고리의 다른 글
Swift - extension(확장) (0) | 2021.11.03 |
---|---|
Swift - override(클래스 상속) (0) | 2021.11.03 |
Swift - window VS Mac (0) | 2021.10.28 |
Swift - Failable Initializers(실패 가능한 생성자) (0) | 2021.10.23 |
Swift - property(프로퍼티) (0) | 2021.10.23 |