swift基础:第六部分:类与对象
http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档)
互联网这个时代,你松懈一天,就会有很多很多的新的技术和新的领域崭露头角,一时之间,就感觉自己的技术快要被淘汰掉,说实话,心急火燎的,本来我想在iOS开发技术日渐成熟到熟练的时候去学习html5,而现实却是那般残酷,facebook开源react Native,据说可以跨平台开发,iOS已经全面支持,只有安卓会在十月份达到全面支持。如此看来,学习react Native已形成刻不容缓之势。加快进度吧,把swift基础的最后一部分学习完,好,进入正题吧。
1.类和对象
class Person { //属性 var name:String = "zhangsan" var age : Int? //初始化方法 init (name:String,age:Int) { self.name = name self.age = age } //方法 func printName(){ print(self.age!) } //析化器,相当于oc中的dealloc方法 deinit { } } //创建对象 Person (name: "lisi",age: 34) let per = Person(name: "wangwu",age: 24) per.printName()
2.结构体,说到结构体,在oc中的结构体和类有些相似,但是也有很大的区别,那么在swift中结构体和类有哪些相似点和不同点呢
先看一个结构体
struct car { var carNumber:Int? var carType:String? init(carNumber:Int, carType:String) { self.carNumber = carNumber self.carType = carType } }
/* 类与结构体的区别 *相同点: 1.都包含属性和方法,swift的结构体和c的结构体有很大区别 2.都包含构造器方法 *不同点: 1.类可以被继承,结构体不能 2.类包含析构器结构体却没有 */
3.我们再来写一个完整的类,加强练习吧
class Student { var name:String? var age: Int? var sex: String? var studentId: Int? init(name:String, age:Int, sex:String, studentId:Int) { self.name = name self.age = age self.sex = sex self.studentId = studentId } func printInfo() { print("my name is \(self.name!),age is \(self.age!),sex is \(self.sex!),student id is \(self.studentId!)") } deinit { } } let stu = Student(name: "zhangsan",age: 23,sex: "男", studentId: 20110302010321) stu.printInfo()
4.重写父类的初始化方法,须使用override关键字
//重写父类方法 class student: Student { var score:Float? override init(name: String, age: Int, sex: String, studentId: Int) { super.init(name: name, age: age, sex: sex, studentId: studentId) } }
5.类方法
//重写父类方法 class student: Student { var score:Float? override init(name: String, age: Int, sex: String, studentId: Int) { super.init(name: name, age: age, sex: sex, studentId: studentId) } //类方法 class func printMethod(name:String) { print(name) } }
6.协议的基本形式是 : protocol协议名{ }
protocol protorolDelegate { func change(name:String, age:Int) -> String }
7.继承关系
class teacher: Person,personDelegate { func change() -> String { return "name" } }
swift的基础语法部分就简单涉猎到这儿,下一节我们学习,swift的UI部分。
posted on 2016-04-27 15:24 一蓑烟雨任平生2017 阅读(151) 评论(0) 编辑 收藏 举报