Objective-c基础知识学习

感想

IOS挺难学的,看了几天难的倒不是技术上,而是能查到的最新的资料太少了(可能 想入IOS的已早早入行,而没入行的 都不想入行,导致现在都不出新教程了。)。IOS 更新到了 13 版本,Xcode 也更新到了 11版本。对照网上的教程,差异实在太大,对于IOS小白来说真的有些费劲。

—基于尚学堂ios教程 学习—

C和OC的差异

  • OC *** 面向对象*** 的语言

  • C ***面向过程***的语言

  • OC 面向对象编程

    1. 抽象对象
    2. 如何设计对象
    3. 怎么组合
  • 类和对象的概念

    1. 对象是类的具体, 它可以准确的描述各种特征的具体样子
    2. 类 是对象的抽象 它指在描述一个概念。
    3. 从封装角度看
      1. 结构体 数据的封装
      2. 函数 逻辑的封装
      3. 类 数据和逻辑的封装 是一种更高级的封装
  • 类的组成

    1. 特有属性
    2. 特有行为

NS

前缀带 NS :  历史原因  : NextStep cocoa框架

OC没有命令空间

结构体

struct Student{
char* name;
int age;
}

初始化

NULL nil

指针赋值 为NULL
对象指针类型赋值为 nil

基本数据类型

int 赋值为 0 、
double 0.0 、
char  	""4

懒加载 (延迟加载)

体现在 重写get方法上;

属性

int 声明 NSInteger 原因,ipone5s之前使用的是32 位, 5s之后使用的是 64位。
NSInteger 是 typedef long NSInteger;

@synthesize 修改自动生成的名字

属性类型 相关的 关键词

四种相关类型 可以随意组合。但除 (setter 、getter)不可以同时使用。

属性类型相关
  • assign 默认的 一把用于非对象类型的属性
  • retain 用于对象类型的属性
  • copy 多用于 NSString 类型的属性
线程相关
  • nonatomic 默认的 ,单线程的程序
  • atomic 多线程 的程序
访问权限相关
  • readonly 是生成 getter方法
  • readwirte 生成 setter/getter方法
方法生成相关

setter 重命名生成的setter方法
getter 重命名getter 方法

多参数方法

// 一个冒号 : 一个参数
//声明
-(void) mySetNameAndAge: (NSString*) name : (NSInteger) age;
//使用
[s1 mySetNameAndAge:@“名字”:19];

标签式定义方法的 方式

标签
mySetName:(NSString*) name age:(NSInteger)age : girlFriend (NSString*) girlName;

这个函数的 名字:*** mySetName:name : age: grilFriend ***

类方法

// 编码规范,+ - 与类型之间有个空格(没空格 也不会报错)
实例方法(-方法)
类直接调用

类型方法(+方法)
类直接调用

类型方法的有点,调用形式简单。

类方法的调用

  1. 【类名 方法】

实例方法

  1. 声明 对象
  2. 【对象 方法】

字符串简介 NSString

NSString 类

C的字符串 字符序列 char str[10] char*
类的特性
属性
方法

NSString的方法:
//不可变字符串
NSString str1= @“ddd”;
NSString* str2= [NSString stringWithString:str1];
// 可变字符串
NSMutableString* mStri1=[[NSMutableString alloc] init]
//拼接字符串
[mStrr1 appendString:@“fdfd”];
showString(mStr1);
[mStr1 appendString:@“fadfa”];
str1.length;
mStr1.length;

@”dacer“ /当作对象来处理,但并不是真正的对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值