- 1、多态 相同类型调用同一个方法呈现多种不同的行为特征就是多态 当子类对象直接赋值给父类指针变量,父类 *p = [子类 new];,运行类型是子类,编译类型是父类,所以p不能调用子类单独实现的方法,如果子类重写了父类方法,p调用的方法会是子类重写的方法 isKindOfClass:clazz 判断该对象是否为clazz... 1、多态 相同类型调用同一个方法呈现多种不同的行为特征就是多态 当子类对象直接赋值给父类指针变量,父类 *p = [子类 new];,运行类型是子类,编译类型是父类,所以p不能调用子类单独实现的方法,如果子类重写了父类方法,p调用的方法会是子类重写的方法 isKindOfClass:clazz 判断该对象是否为clazz...
- 1、 copy、mutableCopy方法 copy方法返回对象的不可修改的副本 mutableCopy方法返回的对象可修改的副本 1)、测试demo int main(int argc, char * argv[]) { @autoreleasepool { NSMutableString *book = [NSMutableString strin... 1、 copy、mutableCopy方法 copy方法返回对象的不可修改的副本 mutableCopy方法返回的对象可修改的副本 1)、测试demo int main(int argc, char * argv[]) { @autoreleasepool { NSMutableString *book = [NSMutableString strin...
- 1、Person.h #import <Foundation/Foundation.h> @interface Person : NSObject{ NSString *_name; int _age;} -(void)setName:(NSString *) name andAge:(int) age;-(void)say:(NSString *)conte... 1、Person.h #import <Foundation/Foundation.h> @interface Person : NSObject{ NSString *_name; int _age;} -(void)setName:(NSString *) name andAge:(int) age;-(void)say:(NSString *)conte...
- 1、Xcode某个工程中添加文件 有两种方式: 方式一:“command”+“n”,弹出添加文件对话框。 方式二:在需要添加文件的工程目录下右键,选择“New File…”。 以上方式Xcode会弹出下面的对话框: 左侧是使用Xcode做的工程类别的分类,我们选择“OS X“,在这个目录下,是所有可以添加的文件的分类, ... 1、Xcode某个工程中添加文件 有两种方式: 方式一:“command”+“n”,弹出添加文件对话框。 方式二:在需要添加文件的工程目录下右键,选择“New File…”。 以上方式Xcode会弹出下面的对话框: 左侧是使用Xcode做的工程类别的分类,我们选择“OS X“,在这个目录下,是所有可以添加的文件的分类, ...
- 1、简单构建类和对象和id使用的测试代码如下 Person.h #ifndef Person_h#define Person_h #import <Foundation/Foundation.h>@interface Person : NSObject{ NSString* _name; int _age;}-(void)setName:(NSString *... 1、简单构建类和对象和id使用的测试代码如下 Person.h #ifndef Person_h#define Person_h #import <Foundation/Foundation.h>@interface Person : NSObject{ NSString* _name; int _age;}-(void)setName:(NSString *...
- 1、构建学生对象并且打印相关信息 代码: #import <UIKit/UIKit.h>#import "AppDelegate.h" @interface Student : NSObject//变量@property NSString *name;@property int age;@property float score; //method... 1、构建学生对象并且打印相关信息 代码: #import <UIKit/UIKit.h>#import "AppDelegate.h" @interface Student : NSObject//变量@property NSString *name;@property int age;@property float score; //method...
- 1、正式协议的定义 @protocol 协议名 <父协议1, 父协议2> { 零个到多个方法定义 } 一个协议可以有多个直接父协议,但协议只能继承协议,不能继承类 协议只有方法签名,没有方法实现 2、实现协议 @in... 1、正式协议的定义 @protocol 协议名 <父协议1, 父协议2> { 零个到多个方法定义 } 一个协议可以有多个直接父协议,但协议只能继承协议,不能继承类 协议只有方法签名,没有方法实现 2、实现协议 @in...
- 1、实现函数的可变形参 1)、va_list:这是一个可变类型,用于定义指向可变参数列表的指针变量 2)、va_start:让argList指向一个可变参数列表的第一个参数 3)、提取argList当前指针指向的参数,并且将指针指向下一个参数 4)、释放argList指针,结束提取 2、测试代码 A... 1、实现函数的可变形参 1)、va_list:这是一个可变类型,用于定义指向可变参数列表的指针变量 2)、va_start:让argList指向一个可变参数列表的第一个参数 3)、提取argList当前指针指向的参数,并且将指针指向下一个参数 4)、释放argList指针,结束提取 2、测试代码 A...
- 1、NSDictionary、NSMutableDictionary 可以理解为java里面的map,一个key对应一个value,key不可以重复 NSDictionary不可变,NSMutableDictionary可变 NSMutableDictionary比NSDictionary多了一些增加,删除,修改的函数 比如setObject:forKey: ... 1、NSDictionary、NSMutableDictionary 可以理解为java里面的map,一个key对应一个value,key不可以重复 NSDictionary不可变,NSMutableDictionary可变 NSMutableDictionary比NSDictionary多了一些增加,删除,修改的函数 比如setObject:forKey: ...
- 1、NSSet、NSMutableSet NSSet元素无序、不能重复 NSMutableSet元素无序、不能重复,有一些向集合中增加元素的功能、删除元素....... 2、测试Demo int main(int argc, char * argv[]) { @autoreleasepool { NSS... 1、NSSet、NSMutableSet NSSet元素无序、不能重复 NSMutableSet元素无序、不能重复,有一些向集合中增加元素的功能、删除元素....... 2、测试Demo int main(int argc, char * argv[]) { @autoreleasepool { NSS...
- 1、NSArray NSArray不可变集合,不能添加新元素和删除已有元素和替换元素 2、demo Dog.h #import <Foundation/Foundation.h>#ifndef Dog_h#define Dog_h @interface Dog : NSObject@property (non... 1、NSArray NSArray不可变集合,不能添加新元素和删除已有元素和替换元素 2、demo Dog.h #import <Foundation/Foundation.h>#ifndef Dog_h#define Dog_h @interface Dog : NSObject@property (non...
- 1、问题 command + R运行提示如下错误 Interface type cannot be statically allocated 2、解决办法 是代码写错了 User user = [[User alloc] init]; 改成如下 User *user = [[User ... 1、问题 command + R运行提示如下错误 Interface type cannot be statically allocated 2、解决办法 是代码写错了 User user = [[User alloc] init]; 改成如下 User *user = [[User ...
- 1、哥德巴赫猜想 任意大于2的偶数,都可以表示成为2个素数之和 2、代码实现 #include <iostream>#include <math.h> using ... 1、哥德巴赫猜想 任意大于2的偶数,都可以表示成为2个素数之和 2、代码实现 #include <iostream>#include <math.h> using ...
- 1、KVC介绍 1)、KVC是由NSKeyValueCoding协议提供支持最基本的属性和两个方法如下 setValue:属性值 forkey:属性名:为指定属性设置值 valueForKey:属性名 (得到或者指定属性的值) 2)、当设置value为nil的时候,我们需要在类的实现里面重写setNilValu... 1、KVC介绍 1)、KVC是由NSKeyValueCoding协议提供支持最基本的属性和两个方法如下 setValue:属性值 forkey:属性名:为指定属性设置值 valueForKey:属性名 (得到或者指定属性的值) 2)、当设置value为nil的时候,我们需要在类的实现里面重写setNilValu...
- 1、NSString和NSMutableString NSString是不变字符串类,有点像java里面的String,NSMutableString是可变字符串类,有点类似java里面的StringBuffer 2、测试demo int main(int argc, char * argv[]) { @autoreleasepool { unicha... 1、NSString和NSMutableString NSString是不变字符串类,有点像java里面的String,NSMutableString是可变字符串类,有点类似java里面的StringBuffer 2、测试demo int main(int argc, char * argv[]) { @autoreleasepool { unicha...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签