Swift学习——类的定义,使用,继承,构造等(五)
Swift学习——类的定义,使用。继承,构造等(五)
类的使用说明
1 使用class和类名来创建一个类名,比如: class student
2 类中属性的声明和常量和变量一样,唯一的差别就是他们的上下文是类
3 方法和函数声明也一样
// 1 ---- 简单的类介绍
class Student{ //变量学号初始化为0
var num = 0; //成员函数
func GetNum()->Int{
return num
}
} //创建类的实例对象 var student = Student() //訪问类的成员变量 student.num = 1 //訪问类的成员函数
var Num = student.GetNum() //打印出类的变量和成员函数
println("student1 num is \(student.num)")
println("student2 num is \(Num)") // 2 ---- 类中的构造函数和析构函数 /*
构造函数 init
析构函数 deinit
*/ class StudentLow{
var numberlow:Int = 0
var namelow:String //构造函数。构造器来赋值
init(namelow:String){ /*
self被用来差别实例变量,当你创建实例的时候,像传入函数參数一样给类
传入构造函数的參数。 每一个属性都须要赋值-不管是通过声明(numberlow)
还是通过构造函数(就像namelow)
*/ self.namelow = namelow
} func simpleDescription()->String{ return "I am is low studnet"
} } //注意我的构造函数有參数,这里我创建实例对象时。要加上參数才正确 var studentlow1 = StudentLow(namelow:"Jhon") studentlow1.numberlow = 2 println("studentlow1 num is \(studentlow1.numberlow)")
println("studentlow1 name is \(studentlow1.namelow)")
println("studentlow1 information is \(studentlow1.simpleDescription())") // 3 ---- 继承类。创建StudentLow的子类StudentHight /*
继承说明:
子类的定义方法是在它们的类名后面加上父类的名字,用冒号切割。
创建类的时候并不须要 一个标准的根类,所以你能够忽略父类。
*/ class StudentHight:StudentLow{ var grade:Double init(grade:Double,name:String){
self.grade = grade //注意namelow:name參数传递 super.init(namelow:name)
numberlow = 3
} func Grade()->Double{
return grade*0.9
} //子类假设要重写父类的方法的话,须要用 override 标记——假设没有加入 override 就重写 父类方法的话编译器会报错。
//编译器相同会检測 override 标记的方法是否确实在父类中。 override func simpleDescription()->String{
return "I am a hight student"
} } //创建实例对象 let studenthight1 = StudentHight(grade:98,name:"lucy") println("studenthight1 num is \(studenthight1.numberlow)") println("studenthight1 name is \(studenthight1.namelow)") //调用函数
println("Greades is \(studenthight1.Grade())") println("studenthight1 grade is \(studenthight1.grade)") //调用函数
println("studenthight1 information is \(studenthight1.simpleDescription())");
Swift学习——类的定义,使用,继承,构造等(五)的更多相关文章
- ts中的类的定义,继承和修饰符
自己搞一个ts文件 里面写代码如下,试一下就行了 /* 1.vscode配置自动编译 1.第一步 tsc --inti 生成tsconfig.json 改 "outDir": &q ...
- typescript 类(类的定义、继承、修饰符、抽象类)
代码: // 本节内容 // 1.类的定义 // 2.类的继承 // 3.访问修饰符 // 4.静态属性和静态方法 // 5.抽象类和多态 // js // function Person(name) ...
- python 类的定义和继承
python 2 中类 一.类定义: ? 1 2 class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性如果直接使用类 ...
- JS高级之简单类的定义和继承
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Swift学习之方法定义参数有默认值的时候
func testParms(first fir:String, options opt:JSONSerialization.ReadingOptions = []) -> Bool { ret ...
- Swift 中类的初始化器与继承
首先,Swift 为类定义了两种初始化器来确保类中所有的储存属性都能得到一个初始化值.这两种初始化器就是「指定初始化器」(Designated Initializer)与「便利初始化器」(Conven ...
- swift学习第十一天:类的定义
一: 主要内容 类的介绍和定义 类的属性 类的构造函数 一. 类的介绍和定义 Swift也是一门面向对象开发的语言 面向对象的基础是类,类产生了对象 在Swift中如何定义类呢? class是Swif ...
- swift学习笔记3——类、结构体、枚举
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift学习笔记之-类和结构体
//类和结构体 import UIKit //类和结构体 /* 1.枚举enum.结构体struct和String.Array.Dictionary类型,都属于值传递类型,被赋值给新的常量或变量时传递 ...
随机推荐
- 第13课 SmartGit程序操作介绍
http://www.syntevo.com/
- E20170915-hm
client n. 顾客; 当事人; 诉讼委托人; [计算机] 客户端; seal n. 密封; 印章; 海豹; 封条; v. 密封; 盖章; 决定; 封上(信封); sheet n. 纸; 被 ...
- [Apple开发者帐户帮助]四、管理密钥(2)获取密钥标识符
创建JSON Web令牌(JWT)以与启用的服务进行通信时,需要密钥标识符. 获取密钥标识符 在“ 证书,标识符和配置文件”中,选择侧栏中“键”下的“全部”. 在右侧,选择私钥. 密钥标识符显示在密钥 ...
- ROS-URDF-Xacro
前言:Xacro是一种宏语言,允许代码复用,使用Xacro可以减少URDF文件中的代码量. 参考自:http://wiki.ros.org/urdf/Tutorials/Using%20Xacro%2 ...
- BZOJ 4810 莫队+bitset
思路: 看完这道题根本没有思路啊.... 然后我就膜拜了一波题解... 这神tm乱搞思路 维护两个bitset 第一个bitset代表当前区间哪些数出现过 第二个bitset是 maxp-p出现过 差 ...
- Jquery IE8兼容性
环境: jsp+jquery-1.11.1.min.js 问题描述: 使用$("#article标签id名").append(“xxxxxxxxx") ,chrome.f ...
- MemcachedClient 使用说明
上一篇介绍了Memcached基本使用方法<Memcached使用手册>,下面介绍java如何操作memcached.使用的是java_memcached-release_2.6.6. 一 ...
- Linux通信之poll机制分析
poll机制分析 韦东山 2009.12.10 所有的系统调用,基于都可以在它的名字前加上“sys_”前缀,这就是它在内核中对应的函数.比如系统调用open.read.write.poll,与之对应的 ...
- 01--Java IO基础
一.java.io包概览 Java IO包主要可以分为如下4类: 基于字节操作的I/O接口:InputStream和OutputStream. 基于字符操作的I/O接口:Writer和Reader 基 ...
- 三维重建:SLAM算法的考题总结
参考英文维基:https://en.wikipedia.org/wiki/Slam 参考文档:视觉slam研究分析的一点认识 1. 请简单描述您对机器人的SLAM的概念理解? 答: 机器人需要在自身位 ...