前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >swift 方法(实例方法、类方法)

swift 方法(实例方法、类方法)

作者头像
xy_ss
发布2023-11-22 09:11:32
1270
发布2023-11-22 09:11:32
举报
文章被收录于专栏:浮躁的喧嚣

实例方法

代码语言:javascript
复制
class Student: NSObject {
    var name = ""
    //实例方法的某个参数名称与实例属性名称相同的时,参数名称优先,这时需要用self来区分参数名称和属性名称
    func sayHI(name :String) {
        print("hello \(name),I am \(self.name)")
    }
    func eat(food:String) {
        print("eat \(food)")
    }
}

let student = Student()
student.name = "hanmeimei"
student.sayHI(name: "lilei")  //hello lilei,I am hanmeimei
student.eat(food: "apple")  //eat apple
  • 结构体(方法定义时加上了mutating关键字,从而允许修改属性)
代码语言:javascript
复制
struct Teacher {
    var name = "lilei"
    var age = 0
    
    mutating func changeName() {
        name = "hanmeimei"
    }
}

var teacher = Teacher()
print(teacher.name)   //lilei
teacher.changeName()
print(teacher.name)    //hanmeimei
  • 枚举(方法定义时加上了mutating关键字,从而允许修改属性)
代码语言:javascript
复制
enum Color{
    case red
    case yellow
    case green
    
    mutating func changeColor() {
        switch self {
        case .red:
            self = .yellow
        case .yellow:
            self = .green
        case .green:
            self = .red
        }
    }
}

var color = Color.red
print(color)    //red
color.changeColor()
print(color)    //yellow

类方法

代码语言:javascript
复制
class Student: NSObject {
    static var name = "hanmeimei"
    class func sayHI(name :String) {
        print("hello \(name),I am \(self.name)")
    }
}

Student.sayHI(name: "lilei")    //hello lilei,I am hanmeimei
  • 结构体
代码语言:javascript
复制
struct Teacher {
    static var name = "lilei"
    static func changeName() {
        name = "hanmeimei"
    }
}

print(Teacher.name)     //lilei
Teacher.changeName()
print(Teacher.name)     //hanmeimei
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实例方法
  • 类方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档