Swift

import Foundation

/*
1.class表示类的关键字
2.class后面表示类名
3.类名后面的大括号内表示类的内部
*/

/*
1.属性封装了set和get方法
2.方法里面封装了具体的代码块
3.类封装了属性和方法
4.一个项目封装了多个类
*/
class Person
{
    /* 属性: Swift中有三种属性:1.存储属性 2.计算属性 3.类属性 */
    
    // 储存属性: 主要用于存储一个对象中的变量或者常量(和OC实例变量很像)
    // 注意存储属性必须要赋初始值
    var name: String = ""
    var age: Int     = 20
    var english      = 0
    var mach         = 0
    var chinese      = 0
    
    // 延迟储存属性:让某些资源在用到的时候再去加载, 也就是OC中的懒加载
    // 避免了一些资源的浪费
    lazy var dog = Dog()
    
    // 计算属性: 不是用来储存属性的值, 主要为我们提供个属性的get和set方法,
    // 我们可以通过重写get和set方法, 对属性值做一些简单的运算
    // 注意1: 计算属性不能赋初始值
    // 注意2: 提供get和set方法
    var sum: Int {
// 如果只是只读属性, 则只有get方法, get关键字和大括号都可以省略 return english + mach + chinese } // 类属性: 用class修饰, 只能是计算属性, 不能使用储存属性 // 使用类名调用类属性 class var des: String { get { return "这是一个人" } } /*- 方法 -*/ func sleep() { print("我在睡觉ingzzzzZZ...") } } class Dog { init() { print("这是一只狗") } } // p就是Person类的一个对象 // Person()是一个默认的构造方法 var p = Person() p.name = "张三" //print(p.name) //print(p.dog) p.english = 82 p.mach = 100 p.chinese = 90 //print(p.sum) print(Person.des) // 方法的调用, 也是使用点语法 //p.sleep()

  

原文地址:https://www.cnblogs.com/Rinpe/p/5175912.html