目录

一、练习题

二、小结


一、练习题

1. 编写一个银行账户类,类的成员包括:账户、余额,开户和查询余额。

package Study

class Account {
    public Account(private var _id: String, private var _money: Float64) {}
    
    mut prop id: String {
        get() {
            return this._id
        }
        set(_id) {
            this._id = _id
        }
    }

    mut prop money: Float64 {
        get() {
            return this._money
        }
        set(_money) {
            this._money = _money
        }
    }

    public func findMoney() {
        return this._money
    }
}

main () {
    let account = Account("12121313142449294", 3000.0)
    println(account.findMoney())
}

2. 定义员工类,成员包括:姓名、年龄、性别和展示信息,定义一个管理层类,继承员工类,拥有自己的成员:部门,职务,定义职员类,继承员工类,拥有自己的成员:部门。

package Study

/*
* 员工类
*/
open class Employee {
    public Employee(private var _name: String, private var _age: Int8, private var _sex: String) {}

    mut prop name: String {
        get() {
            return this._name
        }
        set(_name) {
            this._name = _name
        }
    }

    mut prop age: Int8 {
        get() {
            return this._age
        }
        set(_age) {
            this._age = _age
        }
    }

    mut prop sex: String {
        get() {
            return this._sex
        }
        set(_sex) {
            this._sex = _sex
        }
    }

    open public func showInfo() {
        println("员工信息")
        println("姓名\t年龄\t性别")
        println("${this._name}\t${this._age}\t${this._sex}\n")
    }
}

/*
* 管理层类
*/
class Boss <: Employee  {
    Boss(private var _name: String, private var _age: Int8, private var _sex: String, private var _department: String, private var _position: String) {
        super(_name, _age, _sex)
    }

    mut prop department: String {
        get() {
            return this._department
        }
        set(_department) {
            this._department = _department
        }
    }

    mut prop position: String {
        get() {
            return this._position
        }
        set(_position) {
            this._position = _position
        }
    }

    override public func showInfo() {
        println("领导信息")
        println("姓名\t年龄\t性别\t部门\t职务")
        println("${this._name}\t${this._age}\t${this._sex}\t${this._department}\t${this.position}\n")
    } 
}

/*
* 职员类
*/
class Worker <: Employee {
    public Worker(private var _name: String, private var _age: Int8, private var _sex: String, private var _department: String) {
        super(_name, _age, _sex)
    }

    mut prop department: String {
        get() {
            return this._department
        }
        set(_department) {
            this._department = _department
        }
    }

    override public func showInfo() {
        println("职员信息")
        println("姓名\t年龄\t性别\t部门")
        println("${this._name}\t${this._age}\t${this._sex}\t${this._department}\n")
    } 
}

main () {
    let boss = Boss("李老板", 45, "男", "销售部", "经理")
    boss.showInfo()
    let worker1 = Worker("小余", 23, "男", "研发部")
    worker1.showInfo()
    let worker2: Employee = Worker("小李", 24, "女", "销售部")
    worker2.showInfo()
}

二、小结

本章为大家详细的介绍了仓颉编程语言中类的练习题内容,下一章,为大家带来抽象类的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉服务端开发有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐