学Swift挣美元06之类 续篇再说class

作者: iCloudEnd | 来源:发表于2019-02-24 13:03 被阅读72次

    学Swift挣美元06之类 续篇再说class

    本系列教程

    上篇文章我们从感官上体验一下什么类,本文将带领大家深入了解一下class。

    class

    在Swift世界里我们通过class关键词来定义一个类。一个类的名称首字母约定俗成为大写英文字母,类的实现(类的身体)被包裹在一对大括号中。如下

    class Poetry {
        // . . .
    }
    

    属性

    一个object(对象)可以包含多个属性,每个属性可以拥有初始值。如果使用let定义的属性,一定设置了初始值就不能再改变了。

    例如下面代码

    let定义属性并给初始值

    let定义属性并给初始值

    报错

    报错

    修改成var就OK了

    var定义

    属性定义完成后,我们需要告诉编译器如何初始化这些属性。如果不写初始化方式,编译器就给您告警。下面是初始化代码

     init(authorName:String,title:String,body:String){
            self.authorName=authorName
            self.title=title
            self.body=body;
        }
    

    注意:编译器需要知道所以非optional属性的初始化方式。

    init 是一类特殊的函数,当一个对象被初始化时系统会自动调用该函数。
    displayString 不同于其他的属性,他不是通过简单的数值来初始化的,而且大括号内的表达式赋值的。他的需要计算数值的属性,他数值不是静态的。大括号内必须要return 这个关键词。

    方法

    属性就好比食材,为了获得美食我们还需要烹饪的方法。类的方法被包裹在类内部,可以访问所有的属性。下面是代码

     func fullPoetry() -> String {
            return "\(title).\(authorName)\n\(body)"
        }
    

    相关文章

      网友评论

        本文标题:学Swift挣美元06之类 续篇再说class

        本文链接:https://www.haomeiwen.com/subject/qegvyqtx.html