• Swift构造


    构造就是将结构体、类或枚举的实例准备好以便使用的过程。这个过程包括:
    (1)为实例中的每个存储属性设置初始值。
    (2)执行必要的准备和初始化工作。

    实例的构造过程是通过构造器来完成的。

    可以在结构体、类或枚举中提供自定义的构造器,从而自定义实例的构造过程。

    结构体的自定义构造器的基本用法

    /*
     构造器就是名为init的特殊方法,其语法格式为:
     init([形参列表]) {
        构造体
     }
     与普通的方法相比,构造器没有关键字func和返回类型。
     
     当通过“类型名([构造器的实参列表])”创建某个类型的实例时,系统会自动调用相应的自定义构造器,以完成实例的构造过程。
     */
    struct SomeStruct {
        var someProperty: String
        
        init(someProperty: String) {
            self.someProperty = someProperty
        }
    }
    
    let someStruct = SomeStruct(someProperty: "SP")
    someStruct.someProperty
    
    

    类的自定义构造器的基本用法

    /*
     构造器就是名为init的特殊方法,其语法格式为:
     init([形参列表]) {
        构造体
     }
     与普通的方法相比,构造器没有关键字func和返回类型。
     
     当通过“类型名([构造器的实参列表])”创建某个类型的实例时,系统会自动调用相应的自定义构造器,以完成实例的构造过程。
     */
    class SomeClass {
        var someProperty: String
        
        init(someProperty: String) {
            self.someProperty = someProperty
        }
    }
    
    let someClass = SomeClass(someProperty: "SP")
    someClass.someProperty
    
    

    枚举的自定义构造器的基本用法

    /*
     构造器就是名为init的特殊方法,其语法格式为:
     init([形参列表]) {
        构造体
     }
     与普通的方法相比,构造器没有关键字func和返回类型。
     
     当通过“类型名([构造器的实参列表])”创建某个类型的实例时,系统会自动调用相应的自定义构造器,以完成实例的构造过程。
     */
    enum SomeEnum {
        case someValue1
        case someValue2
        case someValue3
        
        init(param: String) {
            switch param {
            case "sv1":
                self = .someValue1
            case "sv2":
                self = .someValue2
            default:
                self = .someValue3
            }
        }
    }
    
    SomeEnum(param: "sv2")
    
  • 相关阅读:
    数据结构与算法4—队列
    栈的应用——括号匹配
    迷宫求解
    python的socket编程
    数据结构与算法3—栈
    数据结构与算法2—链表
    数据结构与算法1—线性表
    增量解析
    ElementTree类
    节点序列化
  • 原文地址:https://www.cnblogs.com/jukaiit/p/10174414.html
Copyright © 2020-2023  润新知