OC @class关键字】的更多相关文章

一.@property关键字需要掌握的知识: 1.用在@interface中,用来自动生成setter和getter的声明 例:@property int age;--相当于执行了右边的代码-->-(void) setAge:(int) age; -(int) age; 二.@synthesize关键字需要掌握的知识: 1.用在@implementation中,用来自动生成setter和getter的实现 例:@synthesize age = _age; 2.注意:在 @synthesize…
// 属性关键字 /* 1.ARC下(自动管理内存,自动引用计数)(IOS) strong,weak ----------------------------------------- 2.MRC下(手动管理内存,手动引用计数) copy       NSString assgin     基本数据类型 retain     对象类型 3.原子性 atomic      支持多线程 nonatomic   不支持多线程  <---目前就用这个 --------------------------…
  1.引用一个类的两种办法 @class:如果你只是定义成员变量.属性 #import:如果是继承某个类 2.两种方法的区别 #import方式会包含被引用类的所有信息,包括被引用类的变量和方法: #import<Foundation/Foundation.h> //#import "Book.h"类似 @interface Book : NSObject @end @interface Student : NSObject { Book *_book; } @prope…
/* int const *p; *p是常量, p是变量 const int *p; *p是常量, p是变量 int * const p; *p是变量, p是常量 const int * const p; *p是常量, p是常量 int const * const p; *p是常量, p是常量 */ #import <Foundation/Foundation.h> #import <objc/runtime.h> /** const的作用 1.const只修饰它右边的内容 2.被…
OC KVC KVC 全称 key valued coding 键值编码 在说KVC之前应该简单的了解一下反射机制 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法. 对于任意一个对象,都能够调用它的任意一个方法和属性. JAVA,C#都有这个机制. ObjC也有,所以你根部不必进行任何操作就可以进行属性的动态读写,那就是KVC. KVC的操作方法由NSKeyValueCoding提供,而他是NSObject的类别,也就是说ObjC中几乎所有的对象都支持KVC操作. 常用…
一.打开XCode4.6.3,新建项目 二.选择Application下的命名行项目 三.输入项目名称,选择Foundation框架创建项目,点击Next 四.二话不说.点击Run.启动我们创建的项目 可以看到输出结果: 好了,第一个OC应用创建完毕!接下来解释下Main.m的内容: 1.#import是一个导入命令,类似于C语言的#include命令,但是相对于#include而言,#import有效的处理了重复导入的问题,在C语言中也提到过如何通过条件编译解决重复导入,而在OC中你不需要处理…
iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import  用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h,此文件必须引用加载. 3)相较于C语言的导入头文件,头文件需要加上条件编译(#ifndef #define  #endif):防止头文件被多次包含 4)OC中关键字前面添加@符,字符串前面也需添加@符. 5)@autoreleasepool自动释放池:应用程序执行的语境,好处:应用程序会自动对内存进…
前言 终于开启了OC的学习篇了,之前由于工作上的事,学习就一直搁浅了,不过最近由于各种原因,感觉必须要开启iOS的开发旅程了,不然就老了.因为之前一直是做Android的,所以学习iOS来就没那么费劲了,当然我们知道,Android是Java语言支撑的,iOS是OC支撑的,关于OC的学习,会和Java相对比这来,这样效率也会高点,同时在大学里学了C/C++所以,学习OC就没什么难度了,就是一套新的api. 概述 目前来说,Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会…
#pragma mark - Day01_01_OC语言的历史(了解) 1) Objective - C 是一门面向对象的高级语言 2) Objective - C 简称 obj - C  \  OC 3) OC 本质是还是C语言 ,是在C语言基础上加上了面向对象的部分,把C语言中复杂的.繁琐的语法封装的更为简单 4) OC完全兼容C,可以在任何位置写C语言的代码 #pragma mark - Day01_02_OC语言的发展现状(了解) #pragma mark - Day01_03_OC的未…
1. 从编写.编译.链接的流程. 1). 创建1个.m的源文件. 2). 在这个文件中写上符合OC语法规范的源代码. 3). 编译. a. 预编译: 执行预处理代码. b. 检查语法. c. 生成目标文件. .o的目标文件. object 4). 链接. a. 添加启动代码. b. 链接函数. 如果代码中使用到了框架中的功能.那么在链接的时候,就必须要告诉编译器去哪个框架中找这些函数. cc xx.o -framework 框架名称 2. 和C程序各个阶段的文件后缀名对比. 源文件     目标…
在写项目 或 阅读别人的代码(一些优秀的源码)中,总能发现一些常见的关键字,随着编程经验的积累大部分还是知道是什么意思 的. 相信很多开发者跟我当初一样,只是基本的常用关键字定义属性会使用,但在关键字概念上及具体的用法「应用场景.优化选择」上却依然有些模糊. 本文为「简书-白开水ln」作者原创:你关注的人,决定了你看到的世界 ^_^. 为此,本着好好学习,一劳永逸的目地,决定按模块一点一点剖析详解它「工作掌握.面试熟悉」. 本篇文章主要从[OC 常用关键字详解]学习总结. 本篇文章较长一些,强烈…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } return 0; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } ; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行,int类型的占…
目前来说,Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会配合着使用C语言.C++,OC主要负责UI界面,C语言.C++可用于图形处理.特点如下: 一.OC基于C语言 C语言是一门面向过程的语言,OC是在C语言的基础上,增加了一层最小的面向对象语法,为什么说是最小的面向对象语法呢?因为OC把一些比较复杂的面向对象语法都去掉了,剩下的都是面向对象的精华,因此OC是一门面向对象的语言,而且会比C++简单很多.因为OC是基于C语言的,所以完全兼容C语言,也就是说我们在开发iO…
本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台开发苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验. 在上篇<从C#到Objective-C,循序渐进学习苹果开发(1)--准备开发账号和开发环境>介绍了一些基本的转换感悟和一些基础的准备工作,还没有正式真实的介绍Objective-C和C#的之前差异,我们知道,从一种环境或者一种语言转换过去另外一种,我们都会做一些对比和理解,这样可以很容易把我们头脑的知识进行对接,在这…
1.类的继承 OC的继承是单继承,每个子类只有一个直接父类 1.1 继承的特点 OC继承的语法 @interface SubClass :SuperClass { //成员变量定义 } //方法定义部分 子类扩展父类,子类可以继承得到父类的: 全部成员变量 全部方法(包括初始化方法) 1.2 重写父类的方法 方法的重写必须注意方法签名关键字要完全相同,方法名和方法签名中的形参标签都要完全相同. 1.3 super super 是OC的关键字,super用于限定该对象调用它从父类继承得到的属性或方…
1.类和对象 1.1定义类 面向对象的程序设计中有两个重要概念:类(class)和对象(object),类事某一批对象的抽象,对象是一个具体存在的实体. Objective-C定义类需要氛围2个步骤 接口部分 :定义该类包含的成员变量和方法. 实现部分 :为该类的方法提供实现. 定义接口部分的语法: @interface MyClass:NSObject { int _count; id _data; NSString* _name; } -(id)initWithString:(NSStrin…
#import <Foundation/Foundation.h> /* NSLog() : C语言中的 printf的增强版 作用: 向控制台输出打印数据. 增强的地方 : 打印时间 , 标题, 进程号 线程号, 多做了一个自动换行操作. @" "在双引号前加@表示oc的字符串. **/ int main(int argc, const char * argv[]) { @autoreleasepool { int a = 70; printf("车内 有%d帅…
程序文件分为头文件(.h)和实现文件(.m): 使用#import关键字将所需的头文件导入程序,并且可以避免程序重复引用相同的头文件: @autoreleasepool { … } 自动释放池: 符号“@”被广泛使用,体现Objective-C的新特性: 使用NSLog执行控制台打印输出内容(例如:NSLog(@”Hello World!”)): 具有Objective-C自己的布尔类型——BOOL,取值为:YES / NO: id数据类型,即泛型对象指针,可表示任意对象类型: 使用nil表示空…
前言   目 前来说,Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会配合着使用C语言.C++,OC主要负责UI界面,C语言.C++ 可用于图形处理.近来,流传Ruby.C#也可以开发iOS应用程序了,甚至还说Ruby比OC更适合写iOS程序.这让不少学习iOS开发的朋友感到很 困扰,究竟学哪门语言好呢?OC会不会被Ruby.C#取代呢?如果被取代了,那我的OC不是白学了?下面我发表一下个人观点:   1> Ruby.C#也能做iOS开发,我觉得这也不算什么坏事,能让更…