Swift学习笔记|Swift面向对象

本文深入介绍了Swift语言中的几个核心概念,包括构造函数重载、类方法、类继承、类功能的动态扩展、类接口(协议)及命名空间的使用。通过具体的代码示例,读者可以更好地理解这些特性的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、构造函数重载

import Foundation
class Hello{
    var _name:String="Swift"
    init(name:String){
        _name=name
    }
    init(){ //构造函数重载
    }
    func sayHi(){
        println("Hello, \(_name).")
    }
}
var hi=Hello()
println(hi.sayHi())

var h=Hello(name: "Zesicus")
println(h.sayHi())

2、类方法

import Foundation
class Hello{
    class func sayHi(){ //类方法
        println("Hi, Swift.")
    }
}
Hello.sayHi() //输出:Hi, Swift

3、类继承

import Foundation
class Hi{
    func sayHi(){
        println("Hi, Zesix.")
    }
}
class Hello:Hi{ //继承类
    var _name:String
    init(name:String){
        _name=name
    }
    override func sayHi(){ //重写函数
        println("Hello, \(_name).")
    }
}
var hi=Hi()
println(hi.sayHi())

var h=Hello(name: "Zesicus")
println(h.sayHi())

4、类功能的动态扩展

import Foundation
class Hello{
    class func sayHi(){
        println("Hi, Swift.")
    }
}
extension Hello{ //动态扩展(将sayyes()添加到类Hello中)
    func sayyes(){
        println("sayyes")
    }
}
Hello.sayHi()
var h=Hello()
h.sayyes()

5、类接口(协议)

import Foundation
protocol Human{ //接口实现
    func getName()->String
}
class Man:Human{
    func getName() -> String {
        return "Zesix"
    }
}
var i=Man()
println("I am \(i.getName())")

6、命名空间(定义多个class类实现)

*******多文件存放形式*********

main.swift

var h=com.zesix.Hello() 
var hh=com.zesix.Hi()

zesix.swift

import Foundation
class com{
    class zesix {
    
    }
}

hello.swift

import Foundation
extension com.zesix{
    class Hello{
        init(){
            println("Hello, Zesix.")
        }
    }
}

hi.swift

import Foundation
extension com.zesix{
    class Hi {
        init(){
            println("Hi, Zesix.")
        }
    }
}



















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值