类和结构体的定义
类的语法格式为:
class 类名
{
//在这里定义类的内容
}
结构体的语法格式为:
struct 结构体名称
{
//在这里定义结构体的内容
}
Swift中类和结构体的名称都以大写字母开头。类的方法和属性使用小写字母开头
eg_类:
class Student{
var number:Int = 0
var name:String = ""
var height:Int = 0
var weight:Int = 0
fun demo(){
print("Student")
}
}
let stu Student()
stu.demo()
eg_结构体:
struct Person
{
var name:String = "张三"
var age:Int = 20
}
let per = Person()
print("名字:\(per.name)")
print("名字:\(per.age)")
定义结构体时,所包含的属性都有默认值,此时构造结构体实例
var per Person()
如果结构体中的属性没有默认值,那么使用结构体的构造函数来实例化结构体。
var stu = Student(name,"小明",age:10)
在swift结构体中,还可以定义方法。
struct Teacher
{
var name : String
var age: Int
var knowledge:String
fun teachStudent()->String
{
return knowledge
}
}
Swift提供了两个恒等式运算符(===和!==)用来监测两个常量或者变量是否引用同一个类实例。
在Swift中,只有类类型是引用类型,其余的一切都是值类型。所以结构体的实例,以及实例中所包含的任何值类型属性,在代码中传递的时候都会被复制。
结构体是值类型,当一个值类型实例作为常量而存在,它的所有属性也将作为常量而存在。而这个特性对类并不适用,因为累是引用类型。如果将引用类型的实例赋值给常量,依然能够改变实例的变量属性。