1、class 引用类型,支持继承,成员默认是私有的,多用于复杂对象建模,复制的对象,改变属性,原属性也会改变。
struct 值类型,不支持继承,成员默认是公开的,用于简单的数据结构;复制的对象,改变属性,原属性不会改变;方法修改需要加mutating。
2、iOS Swift func:调用时可以使用实例名或函数名,可以被实例和类型调用
class func:调用时需要通过类名来调用,不能通过实例名调用
@objc func:调用时需要使用 Objective-C 的语法进行调用,不能使用 Swift 语法
final修饰的方法是不能被继承和重写的。
3、guard 条件表达式 else {
// 必须包含 return/break/continue/throw 等终止执行的语句
}
布尔表达式,为真时跳过后续代码,为假时执行 else 代码块。
4、泛型函数:泛型函数能够接收多种类型的参数,而不仅仅是一种固定的类型。这使得函数更加灵活,可以在不修改函数体的情况下,用于处理不同的数据类型。
5、闭包是可以在代码中被传递和引用的功能性独立代码块,跟C和Objective-C中的代码块(blocks)和其他一些语言中的匿名函数相似
{
(参数列表) -> 返回值类型 in 函数体代码
}
6、swift是强类型(静态)语言,oc是弱类型(动态)语言。
swift 面向协议,oc面向对象编程。
swift支持泛型,oc只支持轻量泛型。
Swift编译时确定类型,Oc运行时确定类型。
7、actor,rxswift
8、数据安全,使用async await