[swift]-类的介绍之一
博客专区 > XJDomain 的博客 > 博客详情
[swift]-类的介绍之一
XJDomain 发表于1年前
[swift]-类的介绍之一
  • 发表于 1年前
  • 阅读 3
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

摘要: 1:类的定义 2:创建类对应的对象 3:给类的属性赋值 《直接赋值和kvc赋值》4:override:重写系统的方法,name必须在该方法前面加上override 5:可以重写kvc一个方法,那么字典中没有的字断可以在类中没有对应的属性

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
欢迎你们的阅读和赞赏、谢谢!

 

 

 

 

共有 人打赏支持
粉丝 16
博文 112
码字总数 44060
×
XJDomain
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: