Swift对象和类

Swift的对象和类

  1. 使用 class 和类名来创建一个类。
  2. 类中属性的声明和常量、变量声明一样,唯一的区别就是它们的上下文是类
  3. 方法和函数声明也一样
  4. 要创建一个类的实例,在类名后面加上括号。使用点语法来访问实例的属性和方法。
  5. swift引入构造函数来初始化类实例。使用 init 来创建一个构造器
  6. 使用 deinit 创建一个析构函数,要在删除对象之前进行一些清理工作,类似于dealloc
  7. 子类的定义方法是在它们的类名后面加上父类的名字,用冒号分割
  8. 子类如果要重写父类的方法的话,需要用 override 标记
  9. 除了储存简单的属性之外,属性可以有 getter 和 setter 。

Swift的枚举和结构体

  1. 使用 enum 来创建一个枚举,
  2. 枚举可以包含方法。
   enum Rank: Int {
   case Ace = 1
   case Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten
   case Jack, Queen, King
   
   func simpleDescription() -> String {
       switch self {
       case .Ace:
           return "ace"
       case .Jack:
           return "jack"
       case .Queen:
           return "queen"
       case .King:
           return "king"
       default:
           return String(self.rawValue)
       }
   }
}

结构体

  • 使用 struct 来创建一个结构体
  • 结构体和类有很多相同的地方,比如方法和构造器
  • 它们之间最大的一个区别就是结构体是传值,类是传引用。
  • mutating 关键字用来标记一个会修改结构体的方法

协议和扩展

  1. 使用 protocol 来声明一个协议。
protocol ExampleProtocol {
var simpleDescription: String { get }
mutating func adjust()
}   
  1. 类、枚举和结构体都可以实现协议
  2. 使用 extension 来为现有的类型添加功能,比如新的方法和计算属性
  3. 可以使用扩展在别处修改定义,甚至是从外部库或者框架引入的一个类型,使得这个类型遵循某个协议。

泛型

  1. 在尖括号里写一个名字来创建一个泛型函数或者类型。

你可能感兴趣的:(Swift对象和类)