加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift -类的定义及使用

发布时间:2020-12-14 01:55:15 所属栏目:百科 来源:网络整理
导读://// main.swift// ClassDemo-06//import Foundationprintln("Hello,World!")//类的定义 Person 名字class Person{ //定义一个字段 年龄 var age :Int = 0; //定义一个字段 名字 //?表示name 为空 nil 或者没有设置 name是可选择的 var name :String?; //构
//
//  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();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读