Swift面向对象基础(上)——Swift中的类和结构体(下)

学习来自《极客学院》

 1 import Foundation
 2
 3 class User {
 4     var name:String
 5     var age:Int
 6     init(name:String,age:Int){
 7         self.age = age
 8         self.name = name
 9     }
10 }
11 var u1 = User(name:"何杨",age:23)
12 var u2 = User(name:"何杨",age:23)
13 println(u1 === u2)
14 println(u1 !== u2)//这两个运算符只能用在引用类型的比较
15 var u3 = u1
16 println(u1 === u3)//指向同一个对象,当然是相同的
17 //如果想要用==或者!=来进行比较引用类型,就必要要对这两个符号进行运算符重载
18
19 //self关键字
20 /*
21 1.构造器中的self代表该构造器正在初始化的实例
22 2.方法中的self代表该方法的调用者
23 */
24
25 /*什么时候用类,什么时候用结构体呢?
26 1.结构体的主要目的是用于封装少量相关的简单数据
27 2.如果需要在传递参数或者赋值时自动复制副本,使用结构体
28 3.明确该类型无须继承另一个已有的类或其他类继承
29 注意:大部分时候,程序应该自定义类而不是自定义结构体
30 */]

 

时间: 2024-12-11 01:30:43

Swift面向对象基础(上)——Swift中的类和结构体(下)的相关文章

Swift面向对象基础(上)——Swift中的类和结构体(上)

学习来自<极客学院> 1 import Foundation 2 3 //1.定义类和结构体 4 /* 5 [修饰符]calss 类名{ 6 零到多个构造器 7 零到多个属性 8 零到多个方法 9 零到多个下标 10 } 11 修饰符可以是:private public internal final 12 */ 13 14 /*定义结构体 15 [修饰符]struct 结构体名{ 16 17 } 18 修饰符可以是:private public internal 19 */ 20 21 /*

详解Swift语言中的类与结构体_Swift

类在 Swift 中类是建立灵活的构建块.类似于常量,变量和函数,用户可以定义的类的属性和方法.Swift给我们提供了声明类,而无需用户创建接口和实现文件的功能.Swift 允许我们创建类作为单个文件和外部接口,将默认在类一次初始化来创建. 使用类的好处: 继承获得一个类的属性到其他类 类型转换使用户能够在运行时检查类的类型 初始化器需要处理释放内存资源 引用计数允许类实例有一个以上的参考 类和结构的共同特征: 属性被定义为存储值 下标被定义为提供访问值 方法被初始化来改善功能 初始状态是由初始

Swift语法专题十——类和结构体

Swift讲解专题十--类与结构体 一.引言         Swift中的类与结构体十分相似,和Objective-C不同的是,Swift中的结构体不仅可以定义属性,也可以像类一样为其定义方法.         Swift中的类与结构体有如下相似点: 1.定义属性来存储值. 2.定义函数来提供功能. 3.通过定义下标语法使用下标的方式取值. 4.定义构造方法来对其进行初始化. 5.通过扩展来在原始基础上添加功能. 6.通过协议来定义实现标准. 当然类和结构体也有许多不同点,下面这些功能是类独有

《从零开始学Swift》学习笔记(Day 25)——类和结构体定义

 原创文章,欢迎转载.转载请注明:关东升的博客 Swift中的类和结构体定义的语法是非常相似的.类使用class关键词定义类,使用struct关键词定义结构体,它们的语法格式如下: class 类名 {     定义类的成员 } struct 结构体名 {     定义结构体的成员 } 从语法格式上看,Swift中的类和结构体的定义更类似于Java语法,不需要像C++和Objective-C那样把接口部分和实现部分放到不同的文件中. 下面来看一个示例: class Employee { //

Swift面向对象基础(中)——Swift中的存储属性和计算属性

1.存储属性:存储在类.结构体里的变量或者常量 2.分为:实例存储属性.类型存储属性 3.所有的存储属性必须显示的指定初始值,在定义时或者构造器当中指定 4.可选类型的存储属性可以不指定初始值 1 import Foundation 2 3 struct lengthRang { 4 var start:Int 5 //定义常量存储属性,可以不指定初始值 6 let length:Int 7 } 8 //创建结构体的实例变量 9 var len = lengthRang(start: 12, l

Swift类与结构体

类和结构体有很多共性:       定义属性存储数据     定义方法执行功能处理     定义下标,通过下标访问他们的值     初始化他们的状态     通过扩展(Extension)扩展其功能     遵守协议(Protocol),协议提供一种特定的标准 功能 类比结构体多出的功能:     能够继承另外一个类     能够核对运行期对象的类型     析构对象释放资源     引用计数允许一个类实例有多个引用  类和结构体的定义  定义类和结构体:  class SomeClass {

《从零开始学Swift》学习笔记(Day 30)——选择类还是结构体呢?

原创文章,欢迎转载.转载请注明:关东升的博客   类和结构体非常相似,很多情况下没有区别.如果你是设计人员在进行系统设计时候,是将某种类型设计成为类还是结构体?  类和结构体异同: 类和结构体都有如下功能: 定义存储属性 定义方法 定义下标 定义构造函数 定义扩展 实现协议  只有类才有的功能: 能够继承另外一个类 能够核对运行期对象的类型 析构对象释放资源 引用计数允许一个实例有多个引用  选择的原则: 结构体是值类型,每一个实例没有独一无二的标识,下面两个数组实例本质上没有区别,他们可以互相

java中的类,通常情况下我看到都是用public 修饰的,什么情况下用private修饰呢?

问题描述 java中的类,通常情况下我看到都是用public 修饰的,什么情况下用private修饰呢? java中的类,通常情况下我看到都是用public 修饰的,什么情况下用private修饰呢,为什么用private修饰,求解答,谢谢 解决方案 一般domain.DTO/VO对象,的字段都是private,要访问它们通过get/set方法 解决方案二: 这个根据你所建的类有关,一般封装数据的时候必将会用private来修饰,或者修饰一些权限较低的变量 解决方案三: public:公有的.公

编程c语言-vs2013中如何定义一个结构体该结构体定义一个结构体数组 结构体数组中包含一个链表

问题描述 vs2013中如何定义一个结构体该结构体定义一个结构体数组 结构体数组中包含一个链表 这样定义对么 编译时报错 缺少:在*前面 这是哪错了啊 请高手指点指点 解决方案 你把两个结构体的定义调换一下次序就没问题啦,要先声明或定义结构体:Station,才能使用 解决方案二: 因为struct Station是在struct Train结构体之后才定义的,所以你要在这之前先声明一下struct Train 解决方案三: 做一个前向声明,或者调换两个结构位置都可以. 解决方案四: 结构体数组