swift繼承
1、屬性的繼承
子類可以繼承父類的屬性,包括儲存屬性、計算屬性和型別屬性
class Person{
//儲存屬性
var age = 20
//計算屬性
var description: String{
return "我現在\(self.age)歲了"
}
//型別屬性
static var kind = "Chinese"
}
class Teacher : Person{}
let teacher = Teacher()
print(teacher.age,teacher.description,"\(Teacher.kind)")
控制檯:
20 我現在20歲了 Chinese
2、屬性觀察器的繼承
class Person{
//儲存屬性
var age = 20{
willSet{
print("age即將被賦值\(newValue)")
}
didSet{
if(age > oldValue){
print("新賦值的值比原來的大")
}else{
print("新賦值的值比原來的小")
}
}
}
}
class Teacher : Person{}
var t:Teacher = Teacher()
t.age = 19
控制檯:
age即將被賦值19
新賦值的值比原來的小
3、下標指令碼的繼承
class Person{
subscript (index:Int) -> String{
switch index{
case 1:
return "1"
case 2:
return "2"
case 3:
return "3"
default:
return "default"
}
}
}
class Teacher : Person{}
let teacher = Teacher()
print(teacher[1],teacher[6])
控制檯:
1 default
4、方法的繼承
包括物件方法和類方法
class Person{
func description(){
print("我是Person的方法")
}
}
class Teacher : Person{}
let teacher = Teacher()
teacher.description()
控制檯:
我是Person的方法
5、增加新屬性和方法
class Person{
subscript (index:Int) -> String{
switch index{
case 1:
return "1"
case 2:
return "2"
case 3:
return "3"
default:
return "default"
}
}
func run(){
print("Person is running")
}
}
class Teacher : Person{
let age = 15
func walk(){
print("Teacher is walking")
}
}
let person = Person()
let teacher = Teacher()
person.run()
teacher.walk()
print(teacher.age)
控制檯:
Person is running
Teacher is walking
15
相關文章
- Swift-繼承Swift繼承
- Swift -- enum 繼承 protocolSwift繼承Protocol
- Swift—類的繼承-備Swift繼承
- Swift中文教程(十三) 繼承Swift繼承
- odoo 繼承(owl繼承、web繼承、view繼承)Odoo繼承WebView
- 原型,繼承——原型繼承原型繼承
- 菱形繼承,虛繼承繼承
- 多繼承 與 多重繼承繼承
- C++繼承詳解:共有(public)繼承,私有(private)繼承,保護(protected)繼承C++繼承
- 三種繼承的方法:public 繼承/private繼承/protected繼承詳解及區別繼承
- Javascript繼承4:潔淨的繼承者—-原型式繼承JavaScript繼承原型
- Javascript繼承2:建立即繼承—-建構函式繼承JavaScript繼承函式
- 繼承繼承
- C++繼承一之公有繼承C++繼承
- JS原型繼承和類式繼承JS原型繼承
- C++中公有繼承、保護繼承、私有繼承的區別C++繼承
- 公有繼承、私有繼承和保護繼承之間的對比繼承
- day23:單繼承&多繼承&菱形繼承&__init__魔術方法繼承
- 類的繼承_子類繼承父類繼承
- JavaScript繼承JavaScript繼承
- JavaScript 繼承JavaScript繼承
- 多繼承繼承
- Java繼承Java繼承
- javascript:繼承JavaScript繼承
- js繼承JS繼承
- 虛繼承繼承
- 10 #### 繼承繼承
- python 基礎之繼承、重寫、多繼承Python繼承
- PostgreSQL 表繼承SQL繼承
- 16-繼承繼承
- 粗談繼承繼承
- 原型和繼承原型繼承
- javascript之繼承JavaScript繼承
- JavaScript class 繼承JavaScript繼承
- JavaScript extends 繼承JavaScript繼承
- Javascrip—繼承(10)Java繼承
- 類的繼承繼承
- PostgreSQL:表繼承SQL繼承