美文网首页
Swift 类和对象 7.22

Swift 类和对象 7.22

作者: jayck | 来源:发表于2016-07-23 09:18 被阅读26次

Swift 类和对象 7.22

class Dog {                     //类名的首字母要大写
    //成员变量
    var kind: String = ""         //创建狗的品种
    var weight: Double = 0.0      //创建狗的重量  
    func bite(name: String) {      //假如狗会咬人
        print("Bite",name)
 }    
}

//与结构体struct的区别
//1.用let定义的结构体变量,成员不能修改
//2.结构体是值类型,在赋值的时候会发生复制
//3.类是引用类型
//4.结构的成员是方法需要加mutating才能修改成员变量
//类calss的默认构造是没有参数的

//构造函数

init() {

 }

//函数//方法
//当一个类没有创建构造函数(init)时,编译器自动生成一个无参数的构造函数,
//一旦创建自定义构造函数,编译器将不会自动生成构造函数

let dog = Dog()                 //创建对象,在堆上分配空间
dog.kind = "吉娃娃"
dog.weight = 4
dog.bite("张三")
class Cat {
    var kind: String = ""
    var weight: Double = 0.0
    var name: String = ""
    
    func eat(food: Double) -> Double {
        weight += food
        return weight
        
    }
    
    class func Animal() -> Cat {
        return Cat() }
    
}
let cat01 = Cat()
dog.kind = "波斯猫"

//析构函数 从程序中删除,从内存中释放掉

deinit() {

}

//strong/weak
//强引用/弱引用
//当一个的强引用个数大于0是,对象就不会被销毁!!!
//变量默认的类型都是strong类型
//weak的应用类型一定是Optional类型(隐含) Dog?
//weak仅仅是通过变量(引用)找到对象而已 (只是使用)
//strong强引用可以维持对象不被销毁 (拥有)

var d1 = Dog()
var d2 = d1

let ani03 = Cat.Animal()
ani03.name = "Katty"
print(ani03.name)

相关文章

  • Swift 类和对象 7.22

    Swift 类和对象 7.22 //与结构体struct的区别//1.用let定义的结构体变量,成员不能修改//2...

  • Swift3.x - 类和结构体

    类的介绍和定义 Swift也是一门面向对象的开发语言。 面向对象的基础就是类,类产生对象。 Swift如何定义类:...

  • 接上面的基础语法(Swift中类的使用)

    类的介绍和定义 1.Swift 也是面向对象的语言,面向对象的基础是类,类产生的对象,那么Swift中如何定义类呢...

  • 13-Swift中的类

    一、类的介绍和定义 Swift也是一门面向对象开发的语言,面向对象的基础是类,类产生了对象; 在Swift中定义类...

  • Swift中类的使用

    一. 类的介绍和定义 Swift也是一门面向对象开发的语言面向对象的基础是类,类产生了对象在Swift中如何定义类...

  • swift —— 对象和类

    使用 'class' 关键字后跟类名来创建一个类。在一个类中,申明一个属性的写法,同申明一个常量或变量的写法是一样...

  • Swift对象和类

    Swift的对象和类 使用 class 和类名来创建一个类。 类中属性的声明和常量、变量声明一样,唯一的区别就是它...

  • 12 类

    1. 类的介绍和定义 Swift也是一门面向对象开发的语言 面向对象的基础是类,类产生了对象 在Swift中如何定...

  • Swift基础小结2

    类一、类的介绍和定义 swift也是一门面向对象开发的语言2.面向对象的基础是类,类产生了对象3.在swift中如...

  • Swift中类的定义

    Swift中类的定义 Swift也是一门面向对象开发的语言 面向对象的基础是类,类产生了对象 在Swift中如何定...

网友评论

      本文标题:Swift 类和对象 7.22

      本文链接:https://www.haomeiwen.com/subject/fuiijttx.html