swift基础:第六部分:类与对象
http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档)
互联网这个时代,你松懈一天,就会有很多很多的新的技术和新的领域崭露头角,一时之间,就感觉自己的技术快要被淘汰掉,说实话,心急火燎的,本来我想在iOS开发技术日渐成熟到熟练的时候去学习html5,而现实却是那般残酷,facebook开源react Native,据说可以跨平台开发,iOS已经全面支持,只有安卓会在十月份达到全面支持。如此看来,学习react Native已形成刻不容缓之势。加快进度吧,把swift基础的最后一部分学习完,好,进入正题吧。
1.类和对象
class Person {
//属性
var name:String = "zhangsan"
var age : Int?
//初始化方法
init (name:String,age:Int) {
self.name = name
self.age = age
}
//方法
func printName(){
print(self.age!)
}
//析化器,相当于oc中的dealloc方法
deinit
{
}
}
//创建对象
Person (name: "lisi",age: )
let per = Person(name: "wangwu",age: )
per.printName()
2.结构体,说到结构体,在oc中的结构体和类有些相似,但是也有很大的区别,那么在swift中结构体和类有哪些相似点和不同点呢
先看一个结构体
struct car {
var carNumber:Int?
var carType:String?
init(carNumber:Int, carType:String)
{
self.carNumber = carNumber
self.carType = carType
}
}
/* 类与结构体的区别 *相同点: 1.都包含属性和方法,swift的结构体和c的结构体有很大区别
2.都包含构造器方法
*不同点: 1.类可以被继承,结构体不能
2.类包含析构器结构体却没有 */
3.我们再来写一个完整的类,加强练习吧
class Student {
var name:String?
var age: Int?
var sex: String?
var studentId: Int?
init(name:String, age:Int, sex:String, studentId:Int)
{
self.name = name
self.age = age
self.sex = sex
self.studentId = studentId
}
func printInfo() {
print("my name is \(self.name!),age is \(self.age!),sex is \(self.sex!),student id is \(self.studentId!)")
}
deinit
{
}
}
let stu = Student(name: "zhangsan",age: ,sex: "男", studentId: )
stu.printInfo()
4.重写父类的初始化方法,须使用override关键字
//重写父类方法
class student: Student {
var score:Float?
override init(name: String, age: Int, sex: String, studentId: Int) {
super.init(name: name, age: age, sex: sex, studentId: studentId)
}
}
5.类方法
//重写父类方法
class student: Student {
var score:Float?
override init(name: String, age: Int, sex: String, studentId: Int) {
super.init(name: name, age: age, sex: sex, studentId: studentId)
}
//类方法
class func printMethod(name:String)
{
print(name)
}
}
6.协议的基本形式是 : protocol协议名{ }
protocol protorolDelegate {
func change(name:String, age:Int) -> String
}
7.继承关系
class teacher: Person,personDelegate {
func change() -> String {
return "name"
}
}
swift的基础语法部分就简单涉猎到这儿,下一节我们学习,swift的UI部分。
swift基础:第六部分:类与对象的更多相关文章
- Java入门篇(六)——类和对象
写到这里终于写到了入门篇的最后一个知识点了.类和对象是Java中经常被提到的两个词汇,实际上可以将类看作对象的载体,它定义了对象所具有的功能.Java是面向对象的语言,因此掌握类与对象是学习Java语 ...
- c++ 吕凤翥 第六章 类和对象(二)
c++ 吕凤翥 第六章 类和对象(二) 指针 引用 和数组 一:对象指针和对象引用 1.指向类的成员的指针 分为指向成员变量和指向成员函数两种指针 成员变量的格式: 类型说明符 类名: ...
- JAVA基础第三章-类与对象、抽象类、接口
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...
- C#基础篇--面向对象(类与对象)
1.类是什么? 类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...
- Kotlin基础(三)类、对象和接口
类.对象和接口 一.定义类的继承结构 一)Kotlin中的接口 Kotlin的接口与Java8中相似,它们可以包含抽象方法的定义以及非抽象方法的实现,但它们不能包含任何状态. interface Cl ...
- (三十六)类数组对象arguments
类数组对象:arguments 在函数调用时,我们总能见到arguments这个对象,它具体是用来干什么的呢?感觉逼格非常高呢 函数在使用时,我们总会位函数传入各种参数,arguments会将参数储存 ...
- Python学习笔记(六)——类和对象
1.self的用法 全面理解self 2. 继承 子类继承父类,自动拥有父类的全部方法 >>> class Animal: def run(self): print('Animal ...
- php笔记(六)PHP类与对象之对象接口
接口的实现 <?php //interface 关键字用于定义一个接口 interface ICanEat{ //接口里面的方法不需要实现 public function eat($food); ...
- Scala 基础(4)—— 类和对象
1. 类.字段和方法 Scala 用 class 关键字定义类,一旦定义好一个类,就可以使用 new 关键字创建对象. Scala 使用 new 调用无参构造器时,可以不使用 (),推荐不使用括号: ...
- Java学习日记基础(五)——类、对象之this、静态变量(类变量)、静态方法(类方法)、四大特征
this 赵本山问奥尼尔:“我的爸爸的爸爸是谁?” 奥尼尔:“不知道” 赵本山:“你傻啊,是我爷爷” 奥尼尔回去问科比:“我的爸爸的爸爸是谁?” 科比:“不知道” 奥尼尔:”你傻啊,是赵本山的爷爷“ ...
随机推荐
- Skype无法收发组消息
我用微软账户登录的Skype 发现无法收发组消息 - 提示发送消息不可用 卸了重装 - 提示 "无法发送消息, 请尝试获取最新的消息版本, 或者是组内成员使用旧版本无法同时视频和发送 ...
- SQLite 粗劣内容
SQLite 的官网 http://addons.mozillan.org/firefox/addon/sqlite-manager/ http://www.sqlite.org sqlite3 *s ...
- 浅析mongodb中group分组
这篇文章主要介绍了浅析mongodb中group分组的实现方法及示例,非常的简单实用,有需要的小伙伴可以参考下. group做的聚合有些复杂.先选定分组所依据的键,此后MongoDB就会将集合依据选定 ...
- Java 通过代理测试webService接口
以下代码针是针对电脑是通过代理上网的情况时使用: System.getProperties().put("http.proxyHost", "111.111.11.1&q ...
- Composer 学习笔记
Composer 是 PHP 的一个依赖管理工具(据说是最优秀的).它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们.目前很多项目以Composer 作为依赖管理工具,目前正在学习yii2 ...
- web系统访问频率限制
无论是spring mvc还是struts,都可以为controller或者aciton执行前,增加拦截器. 通过拦截器中的逻辑控制,可以实现访问频率的限制. 首先构造访问频率数据类 class Fr ...
- PBOC2.0协议中电子存折/电子钱包中圈存交易流程
通过圈存交易,持卡人可将其在银行相应账户上的资金划入电子存折或电子钱包中.这种交易必须在金融终端上联机进行并要求提交个人识别码(PIN)(无论电子存折还是电子钱包应用). 交易流程图如下: 1.1 发 ...
- 浅谈iOS开发中方法延迟执行的几种方式
Method1. performSelector方法 Method2. NSTimer定时器 Method3. NSThread线程的sleep Method4. GCD 公用延迟执行方法 - (vo ...
- Zookeeper学习笔记
ZK ID存放路径 /tmp/zookeeper/myid
- Map与Tuple
一:Map 1.创建一个不可变的map 2.创建一个可变的map 3.创建一个空的map 4.可变map添加一个元素 5.查看一个元素和修改一个元素 6.可变map删除元素 7.不可变map添加一个元 ...