//声明一个基类

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())

Swift继承的更多相关文章

  1. Swift—继承

    一个类可以继承另一个类的方法,属性和其他特性.当一个类继承其他类时,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承具有单继承的特点,每个子类只有一个直接父类,继承是区分类与其他类型的一个 ...

  2. 学习Swift -- 继承

    继承 一个类可以继承另一个类的方法(methods),属性(properties)和其它特性.当一个类继承其它类时,继承类叫子类,被继承类叫超类(父类). 在 Swift 中,子类可以调用和访问父类的 ...

  3. Swift: 继承

    为了在属性值改变的时候获得通知,类可以为继承的属性添加属性观察者.属性观察者可以添加到任何属性上,不管这个属性原来是存储属性还是计算属性. Swift中的类没有一个统一的基类. 为了讲明白继承,我们先 ...

  4. Swift继承的用法

    一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超 ...

  5. Swift - 继承UIView实现自定义可视化组件(附记分牌样例)

    在iOS开发中,如果创建一个自定义的组件通常可以通过继承UIView来实现.下面以一个记分牌组件为例,演示了组件的创建和使用,以及枚举.协议等相关知识的学习. 效果图如下:    组件代码:Score ...

  6. swift 继承和构造器

    继承 class Vehicle { var numberOfWheels: Int var maxPassengers: Int func description() -> String { ...

  7. [IOS]swift自定义uicollectionviewcell

    刚刚接触swift以及ios,不是很理解有的逻辑,导致某些问题.这里分享一下swift自定义uicollectionviewcell 首先我的viewcontroller不是直接继承uicollect ...

  8. Swift与Objective-C交互

    在同一个工程中是可以同时使用Swift和OC的,但不可以同时出现在同一个文件中. OC调用Swift相关信息的方法 在***.m文件中导入工程名-Swift.h即可. 如工程名为ABC,则在需要使用S ...

  9. 移动开发语言Swift

    苹果公布了全新的编程语言Swift,Swift继承了Objective-C语言特性,并从Python和Java Script中长处,使Swift更易读.未来swift编程语言的会特大广大的使用 Swi ...

随机推荐

  1. OpenStack及其构成简介1

    第一部分 OpenStack及其构成简介 一.云计算   云计算是一种计算模型,它将诸如运算能力.存储.网络和软件等资源抽象成为服务,以便让用户通过互联网远程享用,付费的形式也如同传统公共服务设施一样 ...

  2. java导入excel

    package com.duosen.gate.test; import java.io.File; import java.io.FileInputStream; import java.io.Fi ...

  3. Hyper-V笔记

    Hyper-V的网络架设 Hyper-V中创建“虚拟网络”(可看成交换机)会在物理机中创建相应的虚拟网卡.Hyper-V安装好后会默认创建一个“本地连接-虚拟网络”对应的虚拟网卡给物理机使用,原本的本 ...

  4. nginx subrequest演示示例程序

    只有简单subrequest应用演示示例. nginx.conf文件: #user nobody; worker_processes 1; #error_log logs/error.log; #er ...

  5. 二叉树3种递归和非递归遍历(Java)

    import java.util.Stack; //二叉树3种递归和非递归遍历(Java) public class Traverse { /******************一二进制树的定义*** ...

  6. Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask

    原文:Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask 这两个组件都属于选择器,而且它们也有很多相似的地方,最明显的上一点, ...

  7. 'Basic' attribute type should not be a persistence entity/a container

    正在使用IDEA进行HIbernate开发时间,从datasource由此产生的实体映射不理想.需要手动更改. 投身于实体类的属性Setter时间.临时有红tip:'Basic' attribute ...

  8. Cocostudio学习笔记(4) LoadingBar+ TextField

    这同时录制两个控件的使用方法:LoadingBar和 TextField. -------------------------------------------------------------- ...

  9. JQuery Easy Ui (Tree树)详解(转)

    第一讲:JQuery Easy Ui到底是什么呢? 首先咱们知道JQuery是对Java Script的封装,是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等.. JQuery ui是在j ...

  10. POJ 2417 Discrete Logging 离散对数

    链接:http://poj.org/problem?id=2417 题意: 思路:求离散对数,Baby Step Giant Step算法基本应用. 下面转载自:AekdyCoin [普通Baby S ...