美文网首页
1、Swift语言特点

1、Swift语言特点

作者: 黑色幽默_0d96 | 来源:发表于2020-09-22 11:10 被阅读0次

swift的特点:

     1、swift是一种强类型语言,所有变量在声明或者定义的时候会确定类型,并且这个类型不能再被修改。

     2、swift是安全的,强类型是安全性的体现之一。

     3、swift所有的变量(可选型除外)都必须经过初始化才能访问使用,

        (1)、非可选型变量,必须初始化,在结构体和类中,未初始化的非可选型属性,必须在构造函数中先进行初始化

        (2)、可选型

            显式声明?:

                如String?,无需初始化,默认值为nil,使用时需要解包返回确切类型数据使用

            隐式声明!:

                如String!,也无需要初始化,默认值nil,可以解包,也可以不解包直接使用,也就是说,比var t:String! = "TEST",如果有一个变量a是String类型,一个变量b是String?类型,那么若a = t,那么可选型t就无需解包,直接返回一个确切的String类型,而b = t,则是返回一个可选型,这种可选型根据实际需要自动处理

            Optional方式声明:

                需要初始化,这种方式不会自动初始化一个nil值,并且这种方式的也是显示声明

     4、swift数据类型分值类型和引用类型:

        值类型:一般内存分配在栈中,进行赋值都是深拷贝,会开辟全新的内存空间给新变量,对新变量修改不会影响原变量,结构体(struct)、枚举(enum)等都是值类型,像Int、Double、Float、元组、String、Array、Dictionary、Set等,实质都是struct,所以也是值类型

        引用类型:就是指针,一般内存分配在堆中,进行赋值会只拷贝值的内存地址,不会开辟新的内存空间给新变量存储值,对新变量修改会影响原变量,像类、闭包、函数等,都是引用类型

     5、_在swift中有特殊的意义,一般使用来,用于占位进行忽略,比如函数参数名忽略,比如10_000(跟10000一样,但是加_后更易读)

     6、swift语言,在类的继承上,方法是可重写的,而在类中,方法也是可重载的

     7、swift中,可选型的本质是枚举

     8、swift是面向协议的语言:

        (1)、swift语言是面向对象的,但是swift标准库中,基础类只有几个,而协议类型却有几十个,充分说明了swift语言中协议的重要性

        (2)、与OC中的协议不同的是,swift的协议是可多继承和扩展的,并且协议里不仅可以有方法,还可以有属性,这是OC的协议不具备的,在swift中,协议的存在,能更好的去抽象出两个不同事物的共同特性,做到一些类无法做到的是,比如飞机和鸟,明显不同类型,也没有继承关系的两种类型,他们都有翅膀、都会飞行的共同性,最好的选择就是协议了

相关文章

  • 1、Swift语言特点

    swift的特点: 1、swift是一种强类型语言,所有变量在声明或者定义的时候会确定类型,并且这个类型不能再...

  • Swift关键字

    1、extension [ɪk'stɛnʃən] ——扩展可以将某一类相关的代码写在一起,体现Swift语言特点...

  • swift语言特点

    面向协议编程 (Protocol Oriented Programming,简称POP) 优先考虑创建协议,而不是...

  • Swift的基本概念(常量与变量)

    Swift的语言特点 代码的编写更加简洁 结合Playground,可以做到真正意义上的所见即所得 便于扩展,通过...

  • grovvy(1)语言特点

    特点: 1:语法上支持动态类型,闭包等新一代语言的特性 2:无缝集成所有已经存在的java类库(跟kotlin一样...

  • go 教程1 语言特点

    Go语言是一种并发的、带垃圾回收的、快速编译的新语言。它具有以下特点: 可以在一台计算机上仅用几秒钟的时间编译...

  • 二、Swift3.0之语言特点总结

    首先说下最初建立一个工程,Swift中和OC的几个比较明显的区别。1、@UIApplicationMain代表程序...

  • 第一段 熟悉(认识)OC

    熟悉objective-c,特点如下 1.方法名普遍较长,比如loadDataFinish,加载数据完毕,语言特点...

  • [Codility] Lession 3.3 PermMissi

    Swift Solution 1: Swift Solution 2: Swift Solution 3:

  • python3入门与实践

    Day 1 语言特点,环境搭建,数据结构 python 官网:http://python.org集成开发环境:G...

网友评论

      本文标题:1、Swift语言特点

      本文链接:https://www.haomeiwen.com/subject/qtfwyktx.html