Notice
Recent Posts
Recent Comments
Link
투케이2K
12. (swift/xcode) class 클래스 , struct 구조체 생성 및 init 생성자 초기화 실시 본문
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
/*
[요약 설명]
1. class : 클래스를 지정합니다 : 클래스는 상속이 가능
2. struct : 구조체를 지정합니다 : 구조체는 상속이 불가능
3. init : 클래스 및 구조체 생성자 초기화를 지정합니다
*/
// [class 클래스 생성 실시 : 상속이 가능]
class User_Class {
var name: String?
var age: Int?
// 클래스 생성자 초기화 실시
init(name: String, age: Int){
// [전역 변수 = 파라미터 값]
self.name = name
self.age = age
}
// 리턴 함수 정의 실시
func getName() -> String { // name 값을 String 형태로 리턴
if let data = self.name { // 전역 변수가 nil 아닌 경우
return data
}
else {
return ""
}
}
// 리턴 함수 정의 실시
func getAge() -> Int { // age 값을 int 형태로 리턴
if let data = self.age { // 전역 변수가 nil 아닌 경우
return data
}
else {
return 0
}
}
}
// [struct 구조체 생성 실시 : 상속 불가능]
struct User_Struct {
var name: String?
var age: Int?
// 구조체 생성자 초기화 실시
init(name: String, age: Int){
// [전역 변수 = 파라미터 값]
self.name = name
self.age = age
}
// 리턴 함수 정의 실시
func getName() -> String { // name 값을 String 형태로 리턴
if let data = self.name { // 전역 변수가 nil 아닌 경우
return data
}
else {
return ""
}
}
// 리턴 함수 정의 실시
func getAge() -> Int { // age 값을 int 형태로 리턴
if let data = self.age { // 전역 변수가 nil 아닌 경우
return data
}
else {
return 0
}
}
}
// [테스트 메인 함수 정의 실시]
func testMain(){
print("[Program Start]")
print("")
// [클래스 객체 생성 및 데이터 확인 실시]
var userClass = User_Class(name: "투케이", age: 28) // 클래스 생성자 초기화 값 삽입
print("[class] : [init] : [name] : ", userClass.getName()) // 함수 호출 값 확인
print("[class] : [init] : [age] : ", userClass.getAge()) // 함수 호출 값 확인
// [클래스 변수 값 변경 및 재호출 실시]
userClass.name = "twok" // set 함수를 생성해서 넣는 방법도 있습니다
print("[class] : [update] : [name] : ", userClass.getName()) // 함수 호출 값 확인
print("")
// [구조체 객체 생성 및 데이터 확인 실시]
var userStruct = User_Struct(name: "투케이", age: 28) // 구조체 생성자 초기화 값 삽입
print("[struct] : [init] : [name] : ", userStruct.getName()) // 함수 호출 값 확인
print("[struct] : [init] : [age] : ", userStruct.getAge()) // 함수 호출 값 확인
// [구조체 변수 값 변경 및 재호출 실시]
userStruct.name = "twok" // set 함수를 생성해서 넣는 방법도 있습니다
print("[struct] : [update] : [name] : ", userStruct.getName()) // 함수 호출 값 확인
print("")
}
[결과 출력]
[요약 설명]
/*
[요약 설명]
1. class : 클래스를 지정합니다 : 클래스는 상속이 가능
2. struct : 구조체를 지정합니다 : 구조체는 상속이 불가능
3. init : 클래스 및 구조체 생성자 초기화를 지정합니다
*/
반응형
'Swift' 카테고리의 다른 글
14. (swift/xcode) enum 열거체 자료형 사용해 데이터 정의 및 호출 실시 (0) | 2021.10.08 |
---|---|
13. (swift/xcode) class 클래스 상속 (overriding) 및 메소드 재정의 override 수행 실시 (0) | 2021.10.08 |
11. (swift/xcode) for , while 문을 사용해서 반복문 수행 실시 - for stride , while true 무한루프 (0) | 2021.10.08 |
10. (swift/xcode) if else , switch case 문을 사용해서 조건문 분기 처리 실시 (0) | 2021.10.08 |
9. (swift/xcode) 튜플 tuple 사용해 상수 데이터 집합 데이터 만들기 (0) | 2021.10.08 |
Comments