Swift-存储属性,计算属性,类属性

//类的属性定义

class Student: NSObject {
//    定义属性
//    定义存储属性
    var age : Int = 0
    var name :String?

    var mathScore : Double = 0.0
    var chineseScore :Double = 0.0

//    定义一个方法,可以是返回平均成绩 (注意: swift不建议这样使用,应该定义一个计算属性)
    func getAverageScore() -> Double {
//        在swift如果是使用当前对象的某一个属性,或者调用当前对象的某一个方法时,可以直接使用,不用加self
        return (mathScore + chineseScore) * 0.5
    }

//    定义计算属性:通过别的方式计算到结果的属性,称之为计算属性
//    计算属性使用很多
    var averageScore :Double{
        return (mathScore + chineseScore) * 0.5
    }

//    定义类属性:类属性是和整个类相关的属性,而且是通过类名直接访问
//    一般用在单利中多点
    static var courceCount : Int = 0

}

//给对象属性赋值
let stu = Student()
stu.age = 10
stu.name = "wj"

stu.mathScore = 78
stu.chineseScore = 70

print(stu.age)

if let name = stu.name{
    print(name)
}

let averageScore = (stu.mathScore + stu.chineseScore) * 0.5

let ave = stu.averageScore

//类属性
//给类属性赋值
Student.courceCount = 2
时间: 2024-10-04 07:51:19

Swift-存储属性,计算属性,类属性的相关文章

经典类属性和新式类属性

经典类只@property 没有setter 和deleter class A(object): def __init__(self,price): self.__price=price @property def price(self): return self.__price @price.setter def price(self,value): self.__price=value @price.deleter def price(self): print '@price.deleter

接口中的属性都是类属性

原文地址:https://www.cnblogs.com/classmethond/p/9941474.html

swift学习第十二天:类的属性定义

类的属性介绍 Swift中类的属性有多种 存储属性:存储实例的常量和变量 计算属性:通过某种方式计算出来的属性 类属性:与整个类自身相关的属性 存储属性 存储属性是最简单的属性,它作为类实例的一部分,用于存储常量和变量 可以给存储属性提供一个默认值,也可以在初始化方法中对其进行初始化,而且必须得有默认值,否则会报错 下面是存储属性的写法 age和name都是存储属性,用来记录该学生的年龄和姓名 chineseScore和mathScore也是存储属性,用来记录该学生的语文分数和数学分数 clas

Swift 3.0 令人兴奋,但Objective-C也有小改进--Objective-C的类属性

由于Swift 3.0 出了太多令人兴奋的新特性,人们很容易忽略 Objective-C中的小改动.或许你会觉得苹果提及Objective-C 很可能是为了提高和Swift互操作性(译者注:互操作性主要是指OC代码与Swift代码相互转换),不过苹果仍然很欢迎开发者用Objective-C来完成工作. 在这篇文章中,我们就来看看Objective-C中新添加的类属性.Objective-C 类属性摘自 Xcode 8正式版中的说明:Objective-C now supports class p

类属性和对象属性

类属性和对象属性定义 Python一切皆对象(object),每个对象都可能有多个属性(attribute).Python的属性有一套统一的管理方案. 对象的属性可能来自于其类定义,叫做类属性(class attribute).类属性可能来自类定义自身,也可能根据类定义继承来的. 一个对象的属性还可能是该对象实例定义的,叫做对象属性(object attribute). 对象的属性储存在对象的__dict__属性中. dir() 返回的仅是对象的属性的一个名字类表,而 __dict__ 返回的是

Python之路-面向对象&继承和多态&类属性和实例属性&类方法和静态方法

一.面向对象 编程方式 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强-" 什么是面向对象 面向对象就不像面向过程那样按照功能划分模块了,它所关注的是软件系统有哪些参与者,把这些参与者称为对象,找出这些软件系统的参与者也就是对象之后,分析这些对象有哪些特征.哪些行为,以及对象之间的关系,所以说面向对象的开发核心是对象 什么是类 面向对象编程的两个重要的概念:类和对象 类是

谨慎修改Python的类属性

Python的类和类实例都是可变对象,可以随时给属性赋值,并且在原处修改. 在对类属性进行修改时需要特别小心,因为所有的类实例都继承共享类属性,除非实例本身存在和类属性同名的属性.对类属性进行修改,会影响到所有由这个类生成的实例. class CA(object): cls_pre = 'aaaaa' def __init__(self): self.obj_pre = 'bbbbb' a = CA() b = CA() print(a.cls_pre, a.obj_pre) print(b.c

python 之实例属性和类属性

由于Python是动态语言,根据类创建的实例可以任意绑定属性. 给实例绑定属性的方法是通过实例变量,或者通过self变量: class Student(object): def __init__(self, name): self.name = name s = Student('Bob') s.score = 90 但是,如果Student类本身需要绑定一个属性呢?可以直接在class中定义属性,这种属性是类属性,归Student类所有: class Student(object): name

Python 类属性与实例属性的关联

类属性是属于一个类的变量,就像是C++中类的静态成员变量,你只需将该属性定义在所有方法的作用域外,即为类属性,但一般是紧跟在类名后面,类属性为所有实例所共有,你可以通过 类名.属性 来调用类属性 >>> class A:       count = 0; #这就是类属性       def __init__(self):           A.count += 1  #每次调用该方法 count 自增 1       def output(self):           print(

Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法

From: http://www.cnblogs.com/pengsixiong/p/4823473.html 属性分为实例属性与类属性 方法分为普通方法,类方法,静态方法 一:属性: 尽量把需要用户传入的属性作为实例属性,而把同类都一样的属性作为类属性.实例属性在每创造一个类是都会初始化一遍,不同的实例的实例属性可能不同,不同实例的类属性都相同.从而减少内存. 1:实例属性: 最好在__init__(self,...)中初始化 内部调用时都需要加上self. 外部调用时用instancenam