zoukankan      html  css  js  c++  java
  • Swift继承

    //声明一个基类

    class vehicle {

        var maxPassenger : Int = 0

        var manufacturer : String!

        

        func description() -> String {

            return "max passenger is (maxPassenger) and manufacturer is (manufacturer)"

        }

        

        init () {

            maxPassenger = 2

            manufacturer = "Designed By Weasley"

        }

    }


    //声明子类

    class Bicycle : vehicle {

        var numberofWheels : Int = 2

        var maxSpeed : Double = 30

        

        override init() {

            super.init()

            maxPassenger = 2

        }

        

        override func description() -> String {

            //return "numberofWheels : (numberofWheels) maxPassenger : (maxPassenger) with maxSpeed : (maxSpeed) manufacturer is (manufacturer)"

            return super.description() + ";" + "numberofWheels : (numberofWheels) maxSpeed : (maxSpeed)"

        }

    }



    class LimitSpeedBicycle: Bicycle {

        override var maxSpeed : Double {

            get {

                return super.maxSpeed

            }

            set {

                super.maxSpeed = min(maxSpeed, 20)

            }

        }

    }

    var bicycle = Bicycle()

    println(bicycle.description())


    var limit = LimitSpeedBicycle()

    limit.maxSpeed = 30

    println(limit.maxSpeed)



    class SpeedLevel: Bicycle {

        var level  = 1

        override var maxSpeed : Double{

            didSet{

                level = Int(maxSpeed / 10) + 1

            }

        }

        

        override func description() -> String {

            return super.description() + " level is (level)"

        }

    }

    var aBicycle = SpeedLevel()

    aBicycle.maxSpeed = 40

    println(aBicycle.description())


  • 相关阅读:
    学习笔记Jmail收发邮件
    ModalPopup
    学习笔记:UpdatePanel控件
    转AjaxControlToolkit的安装与使用详解
    转linq中的Single()、First()、Take(1) LINQ 标准的查询操作符 排序 orderby、thenby、Take
    转Global.asax文件
    转<%%>、<%=%>、<%$%>、<%@%>的区别
    C++文件包含处理—#include
    GISer学习之道(转载)
    OSG中的示例程序简介
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5094393.html
Copyright © 2011-2022 走看看