zoukankan      html  css  js  c++  java
  • 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()

      

  • 相关阅读:
    著名的二分查找的BUG
    C/C++ static用法
    浅谈C++虚函数
    git备忘(长久更新)
    【经典问题】最大子串和
    水波纹效果
    博客迁址 xpeng.scorpionstudio.com
    终于,我们的新产品Fotor Slideshow Maker上线了!!
    分享一款浏览器扩展--美图搜索-图片搜索工具
    分享网页微信防撤回插件
  • 原文地址:https://www.cnblogs.com/Rinpe/p/5175912.html
Copyright © 2011-2022 走看看