swift基础:第六部分:类与对象

时间:2023-03-08 18:15:23
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: ) let per = Person(name: "wangwu",age: ) 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: ,sex: "男", studentId: )
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部分。