swift -- 类中的方法

时间:2021-08-17 19:56:48

一. 引用类型  类

在类中定义方法

class Person {

//属性

var name : String = ""

//方法

//实例方法 : 在类里面创建一个方法

func eat (a : Int) -> Void {

print(a)

}

//方法的局部参数名称和外部参数名称

//默认参数名

func eat2 (a : Int , b : Int) ->Void {

print(a , b)

}

//指定外部参数名

func eat3 (name a : Int , age b : Int) ->Void {

print(a,b)

}

    //忽略外部参数名(下划线)

func eat4 (a : Int , _ b : Int) ->Void {

print(a,b)

}

    //self在类里面可以认为是一个 类的实例对象

//a.可以调用方法      self.eat(2)

//b.使用self区分类的属性和方法里面的参数名称

func run(name : String) -> Void{

self.name = name

print(name)

}

//类方法

class func drink(b : Int) -> Void{

print(b)

}

}

//实例方法的调用:

var person1 = Person.init()

person1.eat(999) //调用

person1.eat2(2, b: 8)

person1.eat3(name: 2, age: 8)   //外部参数

person1.eat4(2, 8)

二.值类型

//实例方法中修改属性

struct Point {

var age : Int = 10

//声明方法  关键字 才可以修改属性

mutating func setAge(a : Int) -> Void {

self.age = 18

     print(a)

}

  //在可变方法中给 self 赋值

mutating func setBody() ->Void{

        self = Point.init(age: 1999)  //修改属性

}

   //类方法  用static 或class标注方法,就是 类方法

static func sleep(a : Int) -> Void{

print(a)

}

}

//值类型调用方法

var point1 = Point.init()

point1.setAge(666)

point1.setBody()

print(point1.age)

//调用类方法

Point.sleep(111)