swift -类的定义及使用

前端之家收集整理的这篇文章主要介绍了swift -类的定义及使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
//
//  main.swift
//  ClassDemo-06
//


import Foundation

println("Hello,World!")

//类的定义 Person 名字
class Person{
    //定义一个字段 年龄
    var age :Int = 0;
    //定义一个字段 名字
    //?表示name 为空 nil 或者没有设置 name是可选择的
    var name :String?;
    
    //构造方法
    init()
    {//不带参数
        age = 5;
        name = "百度";
        //创建一个对象有初始值
    }
    //这个构造方法带两个参数 name,age
    init(name:String,age:Int)
    {
        self.age = age;
        self.name = name;
        //[self xxxx];//xxxx();
    }
    
    deinit{
        //析构函数 dealloc 自动调用
    }
    func getAge()->Int
    {
        return age;
    }
    //成员方法 实例方法
    func getName()->String{
        //!可以返回nil
        return name!;
    }
    
    //类方法 和某个对象没有关系 以class开头就是类方法
    class func MaxAge()->Int
    {
        return 200;
    }
    //可以用类方法创建对象
    class func person()->Person{
        return Person();
    }
}

func testClass()
{
    //声明一个对象
    var xiaoming = Person();
    xiaoming.age = 100;
    //swift 字段是public
    //println("xiaoming \(xiaoming.age)");
    println("xiaoming \(xiaoming.getAge()) and name is \(xiaoming.name)");
    
    var maxAge = Person.MaxAge();
    println("max age is\(maxAge)");
    
    var xiaoli = Person.person();
    xiaoli.name = "小李";
    println("name is \(xiaoli.name)");
    
    //构造函数两个标签必须写
    //普通函数第一个标签不用谢,# 第二个以后必须写
    
    var xiaowang = Person(name:"小王",age:18);
    println("xiaowang is\(xiaowang.name) age is \(xiaowang.age)");
}

testClass();

猜你在找的Swift相关文章