1.創建Person類文件,繼承NSObject
2.創建Student類文件,繼承自Person(父類)
3.在ViewController中實現以下方法
/**
在swift的同一個項目中(同一個命名空間下),所有的類都是共享的,可以直接訪問,不需要import
所有對象的屬性 var,都可以直接訪問到
*/
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//實例化 Person
//()-> alloc init
//Swift中對應一個函數 init()構造函數
//作用 : 給成員變量分配空間,初始化成員變量
// let p = Person()
//子類繼承父類的方法與屬性
let s = Student()
//name 歸屬于 Student
print(s.name + "-----" + s.no)
}
}
4.在Person(父類)中實現以下方法
/**
1.給自己的屬性分配空間并設置初始值
2.調用父類構造函數,給父類屬性分配空間,并設置初始值
NSObject沒有屬性,只有一個成員變量 'isa'
與OC方法相反
*/
class Person: NSObject
{
var name :String
//重寫Person的構造函數
//重寫 -> 父類這個方法,自雷重寫實現,需要override關鍵字
override init()
{
print("Person init()")
name = "zhan"
//在調用父類方法之前,需要給屬性初始化
super.init()
}
}
5.在Student(子類)中實現以下方法
class Student: Person {
var no : String
override init() {
print("Student init()")
no = "001"
super.init()
}
}