Swift --- 面向对象中类和对象的属性

原创 2015年07月09日 23:52:47

Swift中类和对象的属性分为三种:储存属性,计算属性和类属性。

import Foundation

class Person {
  // 储存属性必须赋初值
  var score1: Int = 20
  var score2: Int = 50

  // 延迟储存属性,需要时再去分配
  lazy var dog: Dog = Dog()

  // 计算属性,不能赋初值,提供get和set方法,
  var sum: Int {
    get {
      return score1 + score2
    }
  }

  // 类属性,只能是计算属性,使用类而非对象去调用
  // 如 Person.desc
  class var desc: String {
    get {
      return "This is one person."
    }
  }

  // 构造方法
  init() {
    println("This is one person.")
  }
}

class Dog {
  init() {
    println("This is one dog.")
  }
}

var p = Person()
println(Person.desc)
println(p.score1)
println(p.score2)
println(p.sum)
println(p.dog)

swift面向对象之属性

swift面向对象之属性与方法 swift属性 存储属性 可以存储常量和变量 惰性存储属性 语法:lazy var 变量 惰性存储属性只有在用的时候才会完成真正的初始化,刚...

Swift:面向对象(属性)

Swift中属性的用法比objective-c中属性的用法丰富了很多。下面我逐一介绍。 一、 存储属性 和 延迟存储属性 Demo如下: class Dog { var name = "...

swift入门第三季(枚举,类,面向对象, 协议)

枚举枚举形式:enum 枚举名{ //使用case关键字列出所有枚举值 }关联值:enum plant{ case Eerth(weight:Double,name:String) }...

Python面向对象,类,继承,多态及鸭子类型,获取类的类型,方法和属性(类似java的反射)

1、创建类的代码:#在Java中,所有的最终父类都是Object #在python中也是,一个类没有直接的父类就写入objectclass Animal(object): #在python中i...

LabVIEW面向对象之如何使用父类的属性值

在面向对象中子类可以继承父类的属相和方法,在C++语言中继承父类的属性很简单,但在LabVIEW中继承父类的属相需要一定的方法。方法需要首先使用父类的读属性值方法,将其父类属性读取出来,然后才可以使用...

JavaScript面向对象:类、方法、属性

JavaScript是一种基于对象的语言,与传统的面向对象的语言(C#、C++)相比,JavaScript中没有类的概念,其继承有两种基本形式:基于对象的继承和基于类型的继承(原型链的继承)。无论哪种...

PHP面向对象之旅:类的属性

在PHP5中,在属性定义可以不设置初值,或者赋予以下红色类型的初值。 PHP中简单类型有8种,分别是: •数值类型 1.boolean 布尔类型 2.integer 整型 3.float 浮...

黑马程序员_面向对象,类,方法,属性

---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ---------------------- 1.      面向对象 a)  ...

每天学一点Swift----面向对象上(四)

七. 存储属性    1. 存储属性指的是存储在类、结构体里的变量或常量。      2. Swift中定义存储属性的语法与定义变量或常量的语法基本基本相同。      3. Swift的存储属性又可...

每天学一点Swift----面向对象上(六)

九. 观察者属性    1. 为了让程序能在属性被赋值时获得执行代码的机会,Swift提供了属性观察者机制,*******属性观察者其实就是两个特殊的回调方法:   willSet(newValue)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Swift --- 面向对象中类和对象的属性
举报原因:
原因补充:

(最多只允许输入30个字)