## Swift语言基础精简版-2

## 主要介绍函数以及类的定义,结构体及枚举的定义

Swift语言第二天

###可选类型的应用场景;

创建方式:

查看是否是可变还是不可变的:

监听系统类属性的改变,用KVO,

##可选类型的应用场景

1.基本书写格式

## Swift语言基础精简版-2_第1张图片


2.其他的一些使用场景


## Swift语言基础精简版-2_第2张图片

###类型转换使用

is   as   as!   as?  四种类型

1.is 用来判断是否是某种类型

2.as   最直接的是 OC的NSString 与 String 的转换

3. 将NSObject转成确定的类型的可选类型

4.将NSObject类型转换成确定的类型,若果是转成确定的类型,那么转换不成功,那么程序就会崩溃


## Swift语言基础精简版-2_第3张图片

###函数的基本使用

1.没有参数没有返回值的函数

2.有参数, 没有返回值的函数 +86

3. 没有参数, 有返回值的函数

4. 有参数有返回值的函数

## Swift语言基础精简版-2_第4张图片

### 内部参数&外部参数

1.什么内部参数名称

1> 在函数内部可以看到的标识符就是内部参数

2> 默认情况下, 所有的参数都是内部参数

2.什么外部参数名称

1> 在函数外部可以看到的标识符就是外部参数

2> 从第二个参数开始, 都是外部参数. 但是第一参数默认不是外部参数

3> 如果希望第一个参数可以也是外部参数, 那么可以第一个参数的标识符前, 加上第一个参数的外部参数名称

4> 如果希望后面的参数不是外部参数, 可以在标识符前加上 _




## Swift语言基础精简版-2_第5张图片

##函数的特殊用法:

当有参数有返回值得时候;如果想要他默认打印出某一个值;

## Swift语言基础精简版-2_第6张图片

### 函数中可变参数的应用

当有多个相同参数的时候,需要用到可变参数

## Swift语言基础精简版-2_第7张图片

###函数的特殊用法

指针参数

在参数前面必须加上 inout 才可以

## Swift语言基础精简版-2_第8张图片

###swift 中枚举值的定义

## Swift语言基础精简版-2_第9张图片

###枚举值得扩充点

## Swift语言基础精简版-2_第10张图片

枚举赋值 : 整形 和 字符串类型的区别

###结构体,自定义结构体

// 给自己的结构体扩充构造函数

// 1.如果没有自定义构造函数, 那么系统也会提供一个默认的构造函数

// 如果有自定义构造函数, 那么会覆盖掉系统的构造函数. 如果不希望被覆盖, 则需要明确的实现

## Swift语言基础精简版-2_第11张图片

##结构体的扩充点

## Swift语言基础精简版-2_第12张图片

###类的定义 很重要哦~

## Swift语言基础精简版-2_第13张图片

###类的属性定义:

三种定义方式:

1.存储属性: 存储一些值

2.计算属性:通过某种方式计算得到结果的属性就是计算属性

3. 类属性:和整个类相关的属性,并且是通过类名访问

3.1 注意点:类属性的定义是 前面 使用static 修饰

## Swift语言基础精简版-2_第14张图片

###监听属性的变

## Swift语言基础精简版-2_第15张图片

###类的构造函数

为什么要这么做??

是为了一开始就让对象就有初始值

1.本身系统就提供了构造方法:但是我想要自己定义构造方法,覆盖系统的构造方法

## Swift语言基础精简版-2_第16张图片

###题外补充知识点:

在OC中,我一般使用kvc,是用来监听某个属性的改变,才用KVC,或者字典转模型

注意点:使用KVC必须要用继承自NSObject

如果在函数中使用,那么必须先调用super.init()

## Swift语言基础精简版-2_第17张图片

你可能感兴趣的:(## Swift语言基础精简版-2)