swift学习笔记(1)类(class)

初始化变量的三种方式:

    1.直接赋值   

    2.重写init方法   

    3.使用 '!'(强制解包属性) '?'(可选存储属性) 两种符号来进行


初始化的方法可以有多个,但是每个方法名都是init,只是他们的参数需要不一样。


使用convenience 来标示的init方法,必须在方法体中调用一个已经存在的init方法


使用 subscript 可以给类自定义下标(好吧,我是第一次见到)


使用  extension 可以无限的扩展已有的类,结构体,或者给枚举类型增加新的功能。据视屏(极客)所说:可以使用这种方式仿制java中的‘package’实现!


class com {
    class xqi {
        class Hello{
            func sayHello(){
                println("Hello xiaoqi")
            }
        }
    }
}

var h = com.xqi.Hello()
h.sayHello()


extension com.xqi{
    class User {
        func getName()->String{
            return "xiaoqi"
        }
    }
}


var u = com.xqi.User()
println("user is \(u.getName())")



使用 protocol 可以来定义一个其他用来实现此协议的规范,如果是类似 ‘interface’,不知道有没有人打我呢!

其中:可以使用 mutating 来定义一个协议中的突变方法,来做其他的事情!





你可能感兴趣的:(swift学习笔记(1)类(class))