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 关键字

 

第三十节:@synthesize关键字

 

 第三十一节:@property 的改进

自动生成的属性 是_属性名,是带下划线的

@property 的属性参数

 

也就是retain 会自动的在setter 方法里面,retainCount+1

 

 MRC

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

 

第三十四节:NSObject、id类型

 

第三十五节:instanceType

 

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

 

自定义构造方法

 

第三十八节:内存管理

 

引用计数器 

MRC 、ARC 

 

 

野指针 

第三十九节:@class

 

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

 

 第四十一节:ARC

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

ARC 下的循环引用 

 总结
 第四十二节:指定哪个类使用MRC,实现ARC与MRC共存
-fno-objc-arc
 第四十二节:分类

编译顺序
 非正式协议

 第四十三节: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

 

 

第五十五节:单例模式

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/93947.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pytorch各种loss函数

pytorch各种loss函数 各种loss函数各种loss函数 Loss Functionsnn.L1Loss创建一个标准来测量输入中每个元素x和目标y之间的平均绝对误差(MAE)nn.MSELoss创建一个标准,用于测量输入中每个元素x和目标y之间的均方误差(L2范数的平方)。nn.CrossEntropyLoss该准则计算输入logits与…

如何在Go中格式化字符串

由于字符串通常由书面文本组成,在很多情况下,我们可能希望通过标点符号、换行和缩进来更好地控制字符串的外观,以使其更易于阅读。 在本教程中,我们将介绍一些处理go字符串的方法,以确保所有输出文本的格式正确。 字…

智慧公厕整体解决方案,厕所革命实施方案的范本

随着城市化进程的不断加快,智慧城市应用正成为未来城市发展的重要方向。其中,智慧公厕作为城市基础设施的重要组成部分,其建设范本已经成为各建设中的智慧城市不可或缺的重要内容。那么,如何打造智慧公厕整体解决方案?…

将数组和减半的最少操作【贪心2】

题目&#xff1a;将数组和减半的最少操作 贪心思路&#xff1a;每次挑选最大的数来减半。 解法&#xff1a;贪心大根堆 class Solution { public:int halveArray(vector<int>& nums) {priority_queue<double> heap;double sum 0.0;for(int& x : nums){hea…

(四)激光线扫描-光平面标定

在上一章节,已经实现了对激光线条的中心线提取,并且在最开始已经实现了对相机的标定,那么相机标定的作用是什么呢? 就是将图像二维点和空间三维点之间进行互相转换。 1. 什么是光平面 激光发射器投射出一条线,形成的一个扇形区域平面就是光平面,也叫光刀面,与物体相交…

代码随想录刷题 Day28

216.组合总和III 和前一个题一样&#xff0c;照着自己就能写出来&#xff0c;就多了一个判断结果是不是等于n的逻辑。有两个地方可以剪纸&#xff0c;一个是当和已经大于要找的时候直接返回&#xff0c;另一个是当剩余元素少于三个的时候直接返回&#xff08;第一层递归是少于…

MAC 如何解决GitHub下载速度慢的问题

说在前面 解决github下载速度慢的方法很多&#xff0c;本文主要介绍通过Git镜像的方式解决下载慢的问题。 主要步骤有&#xff1a;1、找到gitconfig文件&#xff0c; 2、通过git命令查看当前生效的config 配置 3、使用git config命令编辑并添加国内镜像源 1、gitconfig 文件在…

Android etc1tool之png图片转换pkm 和 zipalign简介

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、etc1tool2.1、用法 三、zipalign3.1 使用 四…

在Mac M2本地注册GitLab runner

最近在搞公司的CI/CD&#xff0c;简单记录下部分过程 安装runner sudo curl --output /usr/local/bin/gitlab-runner "https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-arm64" 创建runner 这个步骤需要在gitlab中进行&am…

Qt全屏显示与退出

仿照 按Escape键退出程序中的实现&#xff0c;我们在程序开始的时候全屏显示&#xff0c;按esc键的时候退出全屏。 showFullScreen 全屏显示只需要调用QWidget类&#xff08;QMainWindow也是一个QWidget类&#xff09;的 showFullScreen() 成员函数即可。 退出全屏&#x…

【光伏场地建设规划】python实现-附ChatGPT解析

1.题目 光伏场地建设规划 知识点:数组、动态规划 时间限制:1s 空间限制: 256MB 限定语言:不限 题目描述: 祖国西北部有一片大片荒地,其中零星的分布着一些湖泊,保护区,矿区,整体上常年光照良好,但是也有一些地区光照不太好。 某电力公司希望在这里建设多个光伏电站,生产…

持续集成部署-k8s-核心概念-资源与对象

持续集成部署-k8s-核心概念-资源与对象 1. 资源清单1.1 K8S 的资源清单1.2 常用字段解释2. 对象规约与状态3. 资源的分类:元空间、集群、命名空间3.1 元数据类型3.2 集群类型3.2.1 Namespace3.2.2 Node3.2.3 ClusterRole3.2.4 ClusterRoleBinding3.2 命名空间级3.2.1 工作负载…

电脑右键新建记事本不见了--设置恢复篇(无需操作注册表)

电脑右键新建记事本不见了–设置恢复篇&#xff08;无需修改注册表&#xff09; 电脑不知怎么想右键新建记事本结果竟然不见了&#xff0c;搜寻网上的都是什么修改注册表&#xff0c;粘贴代码修复&#xff08;感觉太复杂了&#xff09;&#xff0c;这里介绍通过设置内重新对记…

北京开发APP需要多少钱

北京开发一个移动应用&#xff08;APP&#xff09;的费用因多种因素而异&#xff0c;包括项目的规模、复杂性、所需功能、设计要求、技术选择、开发团队的经验和地理位置等。一般来说&#xff0c;北京的APP开发费用通常较高&#xff0c;因为这是中国的主要技术和创新中心之一&a…

5.5线程同步机制类封装及线程池实现

文章目录 5.5线程同步机制类封装及线程池实现线程池线程同步机制类封装线程池实现 5.5线程同步机制类封装及线程池实现 线程池 线程池是由服务器预先创建的一组子线程&#xff0c;线程池中的线程数据应该与CPU数据差不多。线程池中的所有子线程都运行着相同的代码。当有新的任…

QT 之数据库 QSqlQuery CURD 实战

零、参考文档 https://doc.qt.io/archives/qt-6.0/qsqldatabase.html 一、开发环境 Ubuntu 20.04 QT6.0 Microsoft SQL Server 2022 Developer Edition (64-bit) 先修改 /etc/odbc.ini 的数据源配置&#xff0c;指定连接数据库 vdb&#xff0c; sudo vim /etc/odbc.ini[mss…

IDEA Rogstry中找不到compiler.automake.allow.when.app.running问题解决

网上大部分人教我们 先 File > Settings 然后 勾选 Build 下的 Compiler中的 Build project automatically 这些步骤都不会有问题 然后就会让我们 ctrl shift alt / 点 Rogstry 打开后 我人就麻了 根本没有什么 compiler.automake.allow.when.app.running 也不用慌 我们…

快速上手Apache POI

哈喽~大家好&#xff0c;这篇我们来看看快速上手Apache POI。 &#x1f947;个人主页&#xff1a;个人主页​​​​​ &#x1f948; 系列专栏&#xff1a;【日常学习上的分享】 &#x1f949;与这篇相关的文章&#xff1a; Red…

Explain执行计划字段解释说明---select_type、table、patitions字段说明

1、select_type的类型有哪些 2、select_type的查询类型说明 1、SIMPLE 简单的 select 查询,查询中不包含子查询或者UNION 2、PRIMARY 查询中若包含任何复杂的子部分&#xff0c;最外层查询则被标记为Primary 3、DERIVED 在FROM列表中包含的子查询被标记为DERIVED(衍生)&…

SpringCloudAlibaba 相关组件的学习一

目录 前言 系统架构演变 1、单体架构 2、垂直架构 3、分布式架构 4、SOA架构 5、微服务架构 一、微服务架构的介绍 1、微服务架构的常见问题 2 微服务架构的常见概念 2.1 服务治理 2.2 服务调用 2.3 服务网关 2.4 服务容错 2.5 链路追踪 3、微服务架构的常用解决…