ios開發中的Swift物件導向,iosswift物件導向

來源:互聯網
上載者:User

ios開發中的Swift物件導向,iosswift物件導向

  iOS在現代電腦語言中,物件導向是非常重要的特性,Swift語言也提供了物件導向的支援。而且在Swift語言中,不僅類具有物件導向特性,結構體和枚舉也都具有物件導向特性

 

  1、Swift中的類和結構體

  Swift中的類和結構體定義的文法也是非常相似的。我們可以使用class關鍵詞定義類,下面我們定義一個Person類,分別包含年齡和姓名屬性。

import UIKitclass JRPerson: NSObject {}

  我們發現現在類的定義和之前OC定義有了很大的不同,對於之前的.m檔案和.h檔案已經消失了,現在我們定義一個類只有一個檔案.swift檔案。

 

2 增加屬性

  在這裡我們定義屬性不需要設定set和get方法了如下所示:

 //方式一 給預設值    var name:String="";    var age:Int!=0;    //方式二 採用可選類型    var name:String!;var age:Int!;

 

3 構造方法

  Swift採用的構造方法跟java類似,我們可以通過重載構造方法來進行初始化,系統有一個預設的構造方法是沒有參數的,我們可以根據自己的需求分別重載構造方法。

 //系統內建構造方法     override init() {        super.init();}//重載構造方法,分別以兩個屬性作為參數     init(name :String,age:Int) {        super.init();                self.name=name;        self.age=age;    }//重載構造方法,用一個字典作為參數    init(dic :Dictionary<String,String>) {        super.init();        self.name=dic["name"];        self.age=dic["age"]?.toInt();    }

 

4 對象初始化如下

//用預設的構造方法初始化        var per0=JRPerson();                //用帶兩個參數的構造方法初始化        var per1=JRPerson(name: "zhangsan", age: 11);                //用帶字典參數的構造方法初始化     var dic=["name":"zhangsan","age":"13"]; var per3=JRPerson(dic: dic);5 對象的方法/**    *  列印出當前人員的屬性    無參數,無傳回值    */    func show(){     println("name=\(name) and age=\(age)");    }/**    *  列印出當前人員的屬性      有參數,有傳回值==》箭頭代表傳回值的類型,我們此時的傳回值為整形    */    func show2(num :Int,str :String,param :String) -> Int{            for (var i=0;i<num;i++){            println(str);        }                return 10;    }

 

6 類方法

  類方法只需要在前面添加class即可如下

/**    *  類方法    *    *  @return <#return value description#>    */   class func show3(){              println("hello");    }

 

7方法的調用 

//用預設的構造方法初始化        var per0=JRPerson();                //調用對象方法        per0.show();        //調用類方法        JRPerson.show3();

 

作者:傑瑞教育
出處:http://www.cnblogs.com/jerehedu/ 
著作權聲明:本文著作權歸煙台傑瑞教育科技有限公司和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文串連,否則保留追究法律責任的權利。
技術諮詢: 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.