[swift]-类的介绍之一
发布时间:2020-12-14 06:49:38 所属栏目:百科 来源:网络整理
导读:1:swift也是一门面向对象开发的语言 2:面向对象的基础是类,类产生对象 3:在swift中,class用于定义类 01-swift类的定义格式: // 定义格式:class a : NSObject { var age = 0 //var name : String? = nil} 02-swift创建对象 let a1 = a() 03-swift给类的属
1:swift也是一门面向对象开发的语言 2:面向对象的基础是类,类产生对象 3:在swift中,class用于定义类 01-swift类的定义格式: // 定义格式: class a : NSObject { var age = 0 //var name : String? = nil } 02-swift创建对象 let a1 = a() 03-swift给类的属性两种方式赋值 > 1:直接赋值 // 直接赋值1 let a1 = a() a1.age = 19 print(a1.age) > 2:使用KVC赋值 // kvc赋值2 a1.setValuesForKeysWithDictionary(["age" : 29]) print(a1.age) 04-使用kVC给类的属性赋值的一个主意环节: > 如果传入的字典里的字段不是该类中的属性,如果不处理,系统就会报错、如name字断 a1.setValuesForKeysWithDictionary(["age" : 29,"name" : "sky"]) print(a1.age) > 解决办法:需要重写系统的一个方法: override func setValue(value: AnyObject?,forUndefinedKey key: String) {} class a : NSObject { var age = 0 //var name : String? = nil override func setValue(value: AnyObject?,forUndefinedKey key: String) {} } 整体阐述几个点: > 1: 类的定义 > 2: 创建类对应的对象 > 3: 给类的属性赋值 {01-直接赋值;02-通过kvc赋值} > 4:可以重写setVale(value:AnyObject?,forUndefinedKey key:),那么字典中没有的字段可以在类中没有对应的属性 > 5:override:重写,如果写的某一个方法是对父类方法进行重写,那么必须在该方法前加上override 意见反馈邮件:1415429879@qq.com 欢迎你们的阅读和赞赏、谢谢! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |