objective-c 基础学习
目录
第一节:OC 介绍
第二节:Fundation 框架
第三节:NSLog 相对于print 的增强
第四节:NSString
第五节:oc新增数据类型
第六节: 类和对象
类的方法的声明与实现
第七节:类和对象的存储
第八节:nil 与 NULL
第九节:分组导航标记#pragma mark
第十节:方法与函数的区别
第十一节:添加文件的便捷方法
第十二节:对象与方法
第十三节:异常处理
第十四节:对象方法和类方法
第十五节:NSString
第十六节:匿名对象
第十七节:属性setter、getter
第十八节:对象之间的关系
第十九节:OC 中的static变量
第二十节:self
第二十一节:继承
继承的特点
第二十二节:访问修饰符
第二十三节:里氏替换原则
第二十四节:description
第二十五:子类是怎么查找到父类的,怎么存储的
第二十六节:类的本质
第二十七节:SEL(selector)
第二十八节:点语法
第二十九节:@property 关键字
第三十节:@sysnthesize关键字
第三十一节:@property 的改进
@property 的属性参数
第三十二节:静态类型、动态类型
第三十四节:NSObject、id类型
第三十五节:instanceType
第三十六节:responseToSelector、isKindOfClass、isMemberOfClass 、isSubclassOfClass
第三十七节:init
自定义构造方法
第三十八节:内存管理
引用计数器
MRC 、ARC
野指针
第三十九节:@class
第四十节:自动释放池@autoreleasepool
第四十一节:ARC
ARC 下的循环引用
总结
第四十二节:指定哪个类使用MRC
第四十二节:分类
编译顺序
非正式协议
第四十三节:Extension
第四十四节:block 类型
Block 的简写
第四十五节:Protocol 协议
第四十六节:Fundation 库中常用的方法
NSString
字符串读取、写入到文件
NSURL 读取、写入文件
字符串比较
查找子串
从后往前搜
NSRange
字符串截取
字符串替换
与其他类型的转换
去掉头尾小写字母、去掉头尾大写字母、去掉头尾指定字母
第四十七节:NSMutableString
第四十八节:NSArray
遍历
写入文件、读取文件
与字符串相关的方法
第四十九节:NSMutableArray
第五十节:NSNumber
第五十一节:NSDictionary 字典数组
取值:
遍历:
存储原理:
第五十二节:NSMutableDictionary
写入、读取文件
存储原理
第五十三节:NSFileManager
创建、拷贝、删除 文件
CGPoint、CGSize、CGRect
NSValue
NSDate
NSCalender:日历对象
第五十四节:copy
第五十五节:单例模式
第一节:OC 介绍


第二节:Fundation 框架
第三节:NSLog 相对于print 的增强


第四节:NSString

第五节:oc新增数据类型


第六节: 类和对象




类的方法的声明与实现



第七节:类和对象的存储



因为方法是通用的
第八节:nil 与 NULL



第九节:分组导航标记#pragma mark
第十节:方法与函数的区别





第十一节:添加文件的便捷方法
第十二节:对象与方法

第十三节:异常处理



第十四节:对象方法和类方法


第十五节:NSString





第十六节:匿名对象

第十七节:属性setter、getter



第十八节:对象之间的关系 
第十九节:OC 中的static变量

第二十节:self

下面两句话意思是一样的,都代表当前对象的name 属性




第二十一节:继承





继承的特点

第二十二节:访问修饰符




第二十三节:里氏替换原则

第二十四节:description
类似于c# 的tostring()


第二十五:子类是怎么查找到父类的,怎么存储的


第二十六节:类的本质


第二十七节:SEL(selector)





第二十八节:点语法



也就是如果没有对应的setter方法,是报错的
第二十九节:@property 关键字

第三十节:@sysnthesize关键字



第三十一节:@property 的改进
自动生成的属性 是_属性名,是带下划线的



@property 的属性参数






MRC
第三十二节:静态类型、动态类型



第三十四节:NSObject、id类型



第三十五节:instanceType



第三十六节:responseToSelector、isKindOfClass、isMemberOfClass 、isSubclassOfClass 
第三十七节:init






自定义构造方法

第三十八节:内存管理



引用计数器


MRC 、ARC




野指针








第三十九节:@class


第四十节:自动释放池@autoreleasepool





第四十一节:ARC



回收指的是,回收对象,是[person new]这个对象







ARC 下的循环引用

总结
第四十二节:指定哪个类使用MRC

第四十二节:分类



编译顺序
非正式协议


第四十三节:Extension
类似于接口




第四十四节:block 类型




Block 的简写




定义在函数的参数里面,把Block的名字拿出来,放在外面

第四十五节:Protocol 协议
类似于c# 的接口











第四十六节:Fundation 库中常用的方法
NSString






字符串读取、写入到文件



NSURL 读取、写入文件


字符串比较
一般来比较带序号的图片

查找子串


从后往前搜
NSRange


字符串截取
字符串替换

与其他类型的转换
去掉头尾小写字母、去掉头尾大写字母、去掉头尾指定字母
第四十七节:NSMutableString




第四十八节:NSArray


使用@ 能打印出NSArray的所有元素



遍历



写入文件、读取文件

与字符串相关的方法

第四十九节:NSMutableArray



第五十节:NSNumber

第五十一节:NSDictionary 字典数组




取值:
dic[@"key"]
dic object for key:@"key"
如果取值没有,则返回nil
[dic allkeys] 、 [dic allvalues]
遍历:

存储原理:
每一个key都通过hash算法,获取到这个下标,存进去

第五十二节:NSMutableDictionary

写入、读取文件

存储原理


第五十三节:NSFileManager


以点开头的文件是隐藏文件 ls-al 能打印出来
创建、拷贝、删除 文件




CGPoint、CGSize、CGRect


NSValue


NSDate

转换的时候会自动的转换成系统的时区


NSCalender:日历对象


第五十四节:copy




第五十五节:单例模式

相关文章:
objective-c 基础学习
目录 第一节:OC 介绍 第二节:Fundation 框架 第三节:NSLog 相对于print 的增强 第四节:NSString 第五节:oc新增数据类型 第六节: 类和对象 类的方法的声明与实现 第七节:类…...
【精彩回顾】 用sCrypt在Bitcoin上构建智能合约
2023年3月24日,sCrypt在英国Exeter大学举办了关于智能合约的大学讲学。sCrypt首席执行官刘晓晖做了题为“用sCrypt在Bitcoin上构建智能合约”的演讲,并与到场的老师、学生进行了深入交流、互动。这次课程着重讲解了 BSV 智能合约的基础概念,以…...
Kotlin 使用泛型
在 Kotlin 中,我们可以使用泛型(Generics)来编写具有通用性的代码,以增强代码的可重用性和类型安全性。通过使用泛型,我们可以在不指定具体类型的情况下编写适用于多种类型的函数和类。 以下是 Kotlin 中使用泛型的几…...
深度学习 二:COVID 19 Cases Prediction (Regression)
Deep Learning 1. 回归算法思路2. 代码2.1 基础操作2.2 定义相关函数2.3.1 定义图像绘制函数2.3.2 数据集加载及预处理2.3.3 构造数据加载器2.3.4 构建前馈神经网络(Feedforward Neural Network)模型2.3.5 神经网络的训练过程2.3.6 模型评估2.3.7 模型测…...
UG\NX二次开发 信息窗口的4种输出方式 NXOpen::ListingWindow::DeviceType
文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 简介 UG\NX二次开发 信息窗口的4种输出方式 NXOpen::ListingWindow::DeviceType 信息窗口的输出类型 enum NXOpen::ListingWindow::DeviceType 枚举值描述 DeviceTypeWindow0输出将写入“信息”窗口DeviceTypeFile1输出…...
mavn打包时如何把外部依赖加进去?
一、添加依赖: <dependency><groupId>com.dm</groupId><artifactId>DmJdbcDriver</artifactId><version>18</version><scope>system</scope><systemPath>${project.basedir}/lib/DmJdbcDriver18.jar</systemP…...
爬虫代理请求转换selenium添加带有账密的socks5代理
爬虫代理请求转换selenium添加带有账密的socks5代理。 一、安装三方库 二、使用方法 1、在cmd命令行输入: 2、给selenium添加代理 最近因为工作需要,需要selenium添加带有账密的socks5代理,贴出一个可用的方法。 把带有账密的socks5代理&am…...
Redis 如何实现数据不丢失的?
Redis 实现数据不丢失的关键在于使用了多种持久化机制,以确保数据在内存和磁盘之间的持久性。以下是 Redis 实现数据不丢失的主要方法: 快照(Snapshot)持久化: Redis 使用快照持久化来定期将内存中的数据写入磁盘。快照是一个数据库状态的副本,包含了所有键和与其相关联的…...
[高等数学]同济版高等数学【第七版】上下册教材+习题全解PDF
laiyuan 「高等数学 第7版 同济大学」 https://www.aliyundrive.com/s/5fpFJb3asYk 提取码: 61ao 通过百度网盘分享的文件:同济版高数教材及… 链接:https://pan.baidu.com/s/1gyy-GMGjwguAjYijrpC8RA?pwdyhnr 提取码:yhnr 高等数学相关: The Ca…...
【面试题精讲】Java超过long类型的数据如何表示
有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址[1] 面试题手册[2] 系列文章地址[3] 在 Java 中,如果需要表示超过 long 类型范围的数据,可以使用 BigInteger 类…...
Shapiro-Wilk正态性检验(Shapiro和Wilk于1965年提出)
Shapiro-Wilk正态性检验是一种用于确定数据集是否服从正态分布的统计方法。它基于Shapiro和Wilk于1965年提出的检验统计量。以下是其基本原理和用途: 基本原理: 零假设(Null Hypothesis):Shapiro-Wilk检验的零假设是数…...
debian设置允许ssh连接
解决新debian系统安装后不能通过ssh连接的问题。 默认情况下,Debian系统不开启SSH远程登录,需要手动安装SSH软件包并设置开机启动。 > 设置允许root登录传送门:debian设置允许root登录 首先检查/etc/ssh/sshd_config文件是否存在。 注意…...
【C语言经典100例题-66】(用指针解决)输入3个数a,b,c,按大小顺序输出。
代码: #include<stdio.h> #define _CRT_SECURE_NO_WARNINGS 1//VS编译器使用scanf函数时会报错,所以添加宏定义 swap(p1, p2) int* p1, * p2; {int p;p *p1;*p1 *p2;*p2 p; } int main() {int n1, n2, n3;int* pointer1, * pointer2, * point…...
【STM32 CubeMX】移植u8g2(一次成功)
文章目录 前言一、下载u8g2源文件二、复制和更改文件2.1 复制文件2.2 修改文件u8g2_d_setup文件u8g2_d_memory 三、编写oled.c和oled.h文件3.1 CubeMX配置I2C3.2 编写文件oled.holed.c 四、测试代码main函数测试代码 总结 前言 在本文中,我们将介绍如何在STM32上成…...
华为云智能化组装式交付方案 ——金融级PaaS业务洞察及Web3实践的卓越贡献
伴随信息技术与金融业务加速的融合,企业应用服务平台(PaaS)已从幕后走向台前,成为推动行业数字化转型的关键力量。此背景下,华为云PaaS智能化组装式交付方案闪耀全场,在近日结束的华为全联接大会 2023上倍受…...
Halcon Image相关算子(二)
(1) dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : ) 功能:从输入图像中选择像素满足阈值条件的那些区域。 图形输入参数:OrigImage:原始图像; 图形输入参数:ThresholdImage&a…...
Rust 多线程编程
一个进程一定有一个主线程,主线程之外创建出来的线程称为子线程 多线程编程,其实就是在主线程之外创建子线程,让子线程和主线程并发运行,完成各自的任务。 Rust语言支持多线程编程。 Rust语言标准库中的 std::thread 模块用于多线…...
JavaScript高阶班之ES6 → ES11(八)
JavaScript高阶班之ES6 → ES11 1、ES6新特性1.1、let 关键字1.2、const关键字1.3、变量的解构赋值1.3.1、数组的解构赋值1.3.2、对象的解构赋值 1.4、模板字符串1.5、简化对象写法1.6、箭头函数1.7、函数参数默认值1.8、rest参数1.9、spread扩展运算符1.9.1、数组合并1.9.2、数…...
网页中嵌套网页制作方法
<!DOCTYPE html> <html> <head> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <meta charset"UTF-8"> <title>网页搜索</title> <style> body { ba…...
系统集成项目管理总结(笔记)
系统集成项目管理总结 基础知识 第一章 信息化知识 第二章 信息系统服务管理 第三章 系统集成专业技术 第四章 项目管理一般知识 第五章 立项管理 第六章 整体管理 第七章 范围管理 第八章 进度管理 第九章 成本管理 第十章 质量管理 第十一章 人力资源管理 第十二…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
