// 4.Extension 延展
@H_301_4@ //----OC中有延展 和 类目 两种。其中,延展是声明该类的私有属性和私有方法,封装性强。类目是对系统原有类 进行扩展,可以扩展属性和方法,并且,该扩展的属性和方法都是可以遗传下去的。 @H_301_4@ //----但是swift 中没有这两种的说法了,只有延展。这里的延展,表示的意义是:A.对原有类的扩展,并且只能扩展方法;B.可以扩充协议,并实现。
class Student {
var name: String?
var age: Int?
func study(){
}
}
extension Student{
func eat(){
print("学生也是需要吃饭的")
}
}
var student_00 = Student()
student_00.study()
@H_301_4@ //使用延展方法student_00.eat()
extension Student: KeepHouseProtocol{
//因为KeepHouseProtocol是可选方法的协议,所以加@objc
@objc func clean() {
print("学生也是需要打扫教室卫生的")
}
}