协议
协议的关键字是protocal。协议只需定义,没有实现的部分。
协议也分两种,属性协议和方法协议。
属性协议
属性协议的声明用var声明,在声明后,要设置get方法或者set方法、get方法一起设置。
//协议
class Person{
var age:Int
var name:String
init(name:String,age:Int){
self.name = name
self.age = age
}
}
protocol ProtocolStudent{
var classScore:Dictionary<String,Int>{
set get}
subscript(index:String)->Int{
set get}
}
class Student:Person,ProtocolStudent{
override init(name: String, age: Int) {
super.init(name: name, age: age)
}
var classScore: Dictionary<String