swiftiOS学习笔记iOS Developer

Swift学习历程07 - Swift中类的使用

2016-05-20  本文已影响228人  凉风有性

献给一起学习的小伙伴

1- 类的介绍和定义

   class 类名 : SuperClass {
       // 定义属性和方法
   }

1- 如何定义类的属性

   class Student : NSObject {
       // 定义属性
       // 存储属性
       var age : Int = 0
       var name : String?

       var chineseScore : Double = 0.0
       var mathScore : Double = 0.0
   }

   // 创建学生对象
   let stu = Student()

   // 给存储属性赋值
   stu.age = 10
   stu.name = "why"

   stu.chineseScore = 89.0
   stu.mathScore = 98.0
class Student : NSObject {
    // 定义属性
    // 存储属性
    var age : Int = 0
    var name : String?

    var chineseScore : Double = 0.0
    var mathScore : Double = 0.0

    // 计算属性
    var averageScore : Double {
        get {
            return (chineseScore + mathScore) / 2
        }

        // 没有意义,因为之后获取值时依然是计算得到的
        // newValue是系统分配的变量名,内部存储着新值
        set {
            self.averageScore = newValue
        }
    }
}


class Student : NSObject {
    // 定义属性
    // 存储属性
    var age : Int = 0
    var name : String?

    var chineseScore : Double = 0.0
    var mathScore : Double = 0.0

    // 计算属性
    var averageScore : Double {
        get {
            return (chineseScore + mathScore) / 2
        }

        // 没有意义.newValue是系统分配的变量名,内部存储着新值
        set {
            self.averageScore = newValue
        }
    }

    // 类属性
    static var corseCount : Int = 0
}

// 设置类属性的值
Student.corseCount = 3
// 取出类属性的值
print(Student.corseCount)
class Person : NSObject {
    var name : String? {
        // 可以给newValue自定义名称
        // 这个是new是重命名  代替newValue  下同
        willSet (new){ // 属性即将改变,还未改变时会调用的方法
            // 在该方法中有一个默认的系统属性newValue,用于存储新值
            print(name)
            print(new)
        }
        // 可以给oldValue自定义名称
        didSet (old) { // 属性值已经改变了,会调用的方法
            // 在该方法中有一个默认的系统属性oldValue,用于存储旧值
            print(name)
            print(old)
        }
    }
    var age : Int = 0
    var height : Double = 0.0
}

let p : Person = Person()

// 在赋值时,监听该属性的改变
// 在OC中是通过重写set方法
// 在swift中,可以给属性添加监听器
p.name = "why"

以前的文章

Swift学习历程01

Swift学习历程02 - 判断语句 循环语句

Swift学习历程03 - 字符串 数组 字典

Swift学习历程04 - 元组 可选类型 类型转化

Swift学习历程05 - 函数 类型转化

Swift学习历程06 - 枚举类型 结构体 类型转化

今天就先写这些了,还有其他事,还有一些小伙伴私信我,问我的微博 微信 ,我以后就统一在结尾都贴上吧!
博客:http://www.cnblogs.com/hongdongheng
微博:http://weibo.com/u/3041860075
微信:nan46825
希望小伙伴多多留言和点赞,和我交流.

写于 2016年5月20日 晚

上一篇下一篇

猜你喜欢

热点阅读