欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

快速了解 ——二

程序员文章站 2022-06-08 13:54:49
...

main

//新建工程命名:zhoukaojineng,创建一个类Person,在类中定义方法eat,实现打印“吃饭”
//创建一个继承自Person的Teacher类,在Teacher类中定义方法teach,实现打印“上课”,调用其父类的eat函数
//创建一个类Student并继承与Person,定义属性name,在Student中监听属性name的setter和getter
//在Student类中重写父类的eat方法,打印“吃了早餐”
//在Student类中定义一个只读属性weight,体重“70kg”
//在Student类中懒加载一个属性age用来年龄“22岁”,为Student类定一个构造函数,在函数内为所有属性赋值
//在Student类中定义一个show方法,用来打印学生信息,函数是公开访问的
//重写Student类的析构函数,在函数内实现所有属性的清空,并打印“调用了析构函数”
import Foundation

let stu = Student()
stu.eat()
stu.show()

print(stu.weight)
print(stu.name)
let per = Person()
per.eat()
let tea = Teacher()


var student:Student? = Student (name: "111", weight: "111")

stu.name = "小昂"

student类

class Student: Person {
//创建一个类Student并继承与Person,定义属性name,在Student中监听属性name的setter和getter
//    init(name:String){
//        self.name = name
//    }
    
    var name:String="小明"{
        willSet{
            print("Student name newValue:\(newValue)")
        }
        didSet{
            print("Student name oldValue:\(oldValue)")
        }
        
    }
    
    //在Student类中重写父类的eat方法,打印“吃了早餐”
    override func eat() {
        print("吃了早餐")
    }
    
    //在Student类中定义一个只读属性weight,体重“70kg”
    var weight : String{
        get {
            return "70kg"
        }
    }
    
    //在Student类中懒加载一个属性age用来年龄“22岁”,为Student类定一个构造函数,在函数内为所有属性赋值
    lazy var age : String = "22岁"
    init(name : String, weight : String) {
        self.name = "重新赋值后"
        
    }
    
    
    //在Student类中定义一个show方法,用来打印学生信息,函数是公开访问的
    func show() -> Void {
        print("重量:\(weight),年龄:\(age)")
    }
    
    //重写Student类的析构函数,在函数内实现所有属性的清空,并打印“调用了析构函数”
    override init() {
        
        
        
        
        
        print("调用了析构函数")
    }
    
}

person //新建工程命名:zhoukaojineng,创建一个类Person,在类中定义方法eat,实现打印“吃饭” func eat() -> Void { print("吃饭") } teacher//创建一个继承自Person的Teacher类,在Teacher类中定义方法teach,实现打印“上课”,调用其父类的eat函数
func teach() -> Void {
print(“上课”)
super .eat()
}

相关标签: swift