class Person {
func run() {
print("向前全速奔跑")
}
}
let per = Person()
per.run()
class Teacher: Person {
func teach() {
print("上课要迟到了")
super.run()
}
}
let tea = Teacher()
tea.teach()
class Student: Person {
var name:String = "小明"{
willSet(new){
print("新的名字:\(new)")
}
didSet{
print("旧的名字:\(oldValue)")
}
}
override func run() {
print("体育课上跑了800米")
}
var height:String{
return "175cm"
}
lazy var age:String = "18岁"
init(name:String,age:String) {
super.init()
self.name = name
self.age = age
}
public func show() {
print("姓名:\(name),年龄:\(age),身高:\(height)")
}
deinit {
self.name = ""
self.age = ""
print("调用了析构函数")
}
}
var stu:Student? = Student(name: "小王", age: "20岁")
stu!.name = "小刚"
//stu.name = "小王"
stu!.run()
print(stu!.height)
stu!.show()
stu = nil
swift 基础练习 类 重写
Swift面向对象编程实践
最新推荐文章于 2025-06-29 10:57:25 发布
本文通过Swift语言实现了一个包含Person、Teacher和Student类的简单面向对象编程案例,演示了继承、覆盖、属性观察器、延迟加载变量、初始化方法、析构函数等概念。
239

被折叠的 条评论
为什么被折叠?



