Swift 个人笔记

在Swift中,子类可以对父类的函数进行重写。但是在重写的时候,要在函数名前加override。

而在oc中进行方法重写的时候不用加override。

在Swift中,初始化函数init在同一个类中可以重载且不用加override。

重载函数中可以传入参数,参数可以在类中用_声明一个实例变量,用来保存这个参数。
举个例子:

class Hello{
var _name:string = "swift” 
init (name:string){
    _name = name
}
init(){
}
func sayHello{
    println(“Hello \(_name)")
}
}
//实例Hello
var h = Hello(name: “有参数的初始化函数")
h.sayHello()
var h1 = Hello()
h1.sayHello()

运行结果:
h输出Hello 有参数的初始化函数
h1输出 Hello Swift

swift的类方法

类方法的声明为 class fun 函数名
在类函数中我们不再使用self这样的关键字。

swift的接口使用方法也称作协议

协议的定义
protocol 协议名{
声明要实现的方法

}

类名:协议名
{
必须实现协议中声明的方法
}

枚举 enumeration

Swift枚举的成员并不会像c和o-c中那样默认生成0,1,2,3这样的索引

自定义初始化函数时用的返回值比较(面试题中看到的)

instancetype instance:情况当前类型
用它做返回值类型时,表示返回当前函数所在类的类型,通常用作自定义初始化函数。比id类型要好。

类内声的公有变量public可以在类外调用,但是不可以用点操作符,要用指向->调用。

例:
类名->公有变量名

  • super表示调用父类的方法
  • self表示调用当前类的方法

在多态中。可以用父类的对象来兼容子类的对象


_仍在学习中~

你可能感兴趣的:(Swift 个人笔记)