当As3遇见Swift(三)

As3

Swift中似乎没有包,包路径的概念。因而显得简洁的多。

package
{
         public class ShuaiGe
         {
        

         }
}

 

Swift类

class ShuaiGe{

}

 

类的构造

As3有构造函数,Swift有构造器,不同的是Swift可以有多个同名但是不同参数的构造器

As3

class ShuaiGe
{
         function ShuaiGe(){}//构造函数
}

Swift

class ShuaiGe{
         init(){}  //构造器
         init(name:String){}  //构造器
        init(age:Int){}  //构造器
}

 

类的析构

析构函数在实例被销毁前调用。As3无,Swift有

Swift

deinit{
         // 执行析构过程
}

类的继承

As3使用关键字extends Swift使用冒号

As3

package
{
    public class Eko extends Shuaige
    {

    }
}

Swift

class Eko:ShuaiGe{
 
}

 

类的属性

关于类的属性,Swift就比As3精彩的多了例如@lazy延迟存储,属性监视器willSet在设置新值之前调用。didSet在新值设置之后调用。

类的静态属性

As3使用关键字static

Swift类使用class关键字,结构体和枚举使用static关键字

 

类属性的覆盖

都使用override关键字,能够对方法和属性进行覆盖。

Swift使用@final能够防止覆盖例如

@final var, @final func, @final class func 以及 @final sunscript

 

As3

使用final关键字在class前或者后表示不能继承。使用 private关键字能表示属性或方法私有而不能被覆盖

 

类的实例本身

As3 使用this关键字,Swfit使用self关键字。

 

自动引用计数器

As3和Swift都是使用计数器来跟踪和管理内存,进行垃圾回收。

posted on 2014-06-17 13:44  老镇  阅读(1592)  评论(0编辑  收藏  举报

导航