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

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-31 15:32:27

Swift继承的相关文章

swift 继承相关

class Vehicle { var numberOfWheels: Int var maxPassengers: Int func description() -> String { return "\(numberOfWheels) wheels; up to \(maxPassengers) passengers" } init() { numberOfWheels = 1; maxPassengers = 3; } } class Bicycle: Vehicle {

swift 继承和构造器

继承 class Vehicle { var numberOfWheels: Int var maxPassengers: Int func description() -> String { return "\(numberOfWheels) wheels; up to \(maxPassengers) passengers" } init() { numberOfWheels = 0 maxPassengers = 1 } } class Bicycle: Vehicle {

Swift继承的用法

一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超类的方法,属性和下标,并且可以重写(override)这些方法,属性和下标来优化或修改它们的行为.Swift会检查你的重写定义在超类中是否有匹配的定义,以此确保你的重写行为是正确的. 可 以为类中继承来的属性添加属性观察器(property observer),这样一来,当属性值改变时,类就会被通知

23.swift继承

import Foundation /* 继承语法 继承是面向对象最显著的一个特性, 继承是从已经有的类中派生出新的类 新的类能够继承已有类的属性和方法, 并能扩展新的能力 术语: 基类(父类, 超类), 派生类(子类, 继承类) 语法: class 子类: 父类{ } 继承有点: 代码重用 继承缺点: 增加程序耦合度, 父类改变会影响子类 注意:Swift和OC一样没有多继承 */ class Man { var name:String = "lnj" var age: Int =

学习Swift -- 继承

继承 一个类可以继承另一个类的方法(methods),属性(properties)和其它特性.当一个类继承其它类时,继承类叫子类,被继承类叫超类(父类). 在 Swift 中,子类可以调用和访问父类的方法,属性和下标脚本(subscripts),并且可以重写(override)这些方法.属性和下标脚本来优化或修改它们的行为.Swift 会检查你的重写定义在超类中是否有匹配的定义,以此确保你的重写行为是正确的. 可以为子类中继承来的属性添加属性观察器(property observers),这样一

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

在iOS开发中,如果创建一个自定义的组件通常可以通过继承UIView来实现.下面以一个记分牌组件为例,演示了组件的创建和使用,以及枚举.协议等相关知识的学习. 效果图如下: 组件代码:ScoreView.swift 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 5

swift继承与重载

一个类可以继承(inherit)另一个类的方法(methods),属性(property)和其它特性.当一个类继承其它类时,继承类叫子类(subclass),被继承类叫超类(或父类,superclass).在 Swift 中,继承是区分「类」与其它类型的一个基本特征. 在 Swift 中,类可以调用和访问超类的方法,属性和附属脚本(subscripts),并且可以重写(override)这些方法,属性和附属脚本来优化或修改它们的行为.Swift 会检查你的重写定义在超类中是否有匹配的定义,以此确

【Swift初见】Swift继承

对于继承这个名字大家应该都不陌生,在swift中也是一样,swift中的一个类可以继承另一个类的方法,属性和其他特性.当一个类继承其他类时,继承类叫做子类,被继承的类叫做父类,在swift中继承是区分类与其他类型的一个基本特征. 定义一个基类: 当一个类不继承其他类,这个类叫做基类.比如看下面的代码: class vehicle { var maxPassengers : Int var manufacturer : String func description() -> String{ re

Swift 继承

继承我们可以理解为一个类获取了另外一个类的方法和属性. 当一个类继承其它类时,继承类叫子类,被继承类叫超类(或父类) 在 Swift 中,类可以调用和访问超类的方法,属性和下标脚本,并且可以重写它们. 我们也可以为类中继承来的属性添加属性观察器. 基类 没有继承其它类的类,称之为基类(Base Class). 以下实例中我们定义了基类 StudDetails ,描述了学生(stname)及其各科成绩的分数(mark1.mark2.mark3): class StudDetails { var s

swift继承和扩展

// inherit & extension 继承和扩展 //父类 class 车 { var 速度 = 0 var 描述 :String { return "时速\(速度)公里每小时" } func 声响() { } } let 一辆车 = 车() 一辆车.描述 //子类继承父类 class 自行车: 车{ var 有篮子 = false } let 一辆自行车 = 自行车() 一辆自行车.有篮子 = true 一辆自行车.速度 = 25 一辆自行车.描述 //子类的子类 c