oc的一些总结

下面几个问题是oc中需要掌握的内容

1.如何掌握一个方法的方法名
2.一个对象调用一个autorelease,什么时候释放
3.字典和数组,集合都有什么特点
4.如何定义一个类
5.类目是什么
6.什么是对象
7.属性的属性,(assgin )
8.不要再setter中调用自己,负责会死循环
8.可变字符串改变的还是自己
9.字典里面key必须是唯一的,新key会覆盖旧值
10.类方法里不能使用实际变量
11.dealloc什么时候调用,注意事项
12.内存管理
13.初始化方法是做什么用的
14.怎么去使用block变量
,掌握声明定义
15.属性方法的setter内部实现
16.便利构造器怎么写
17.如何处理autorelease对象

一些小的知识点

id是一个指向任意对象类型

"+" +方法即类方法不能调用自己类的实例变量

#import 将一个文件的全部文件内容拷贝到当前文件

私有不会拷贝过去,因为import的时.h文件而不是.m文件

类目中一班添加没有的方法,而不是重写,重写一般是在子类中重写

输出字典的时候key = value

类的初始化作用:在创建对象后,对这个刚刚创建的实例对象进行初始化操作,即做一些默认操作

堆区是手动管理内存

栈区是系统管理内存

BLOCK的无返回值声明:void (^block)(NSString *str);

NSString *testObject = [[NSData alloc] init]; testObject 在编译和运行时分别是什么类型

编译时是NSString类型    运行时是NSData类型

协议的property声明用什么属性?为什么?

协议是多个类分享的一个方法列表,在协议中所列出的方法没有响应的 实现,    有其他人来实现
协议的property声明用assign特性,因为要防止对象和其他代理对象之间互相应用,导致无法释放内存
在block内部要改变外部变量时,需要使用_block关键字
 
扩展一个累的功能有几种途径?有什么区别?
类目:类目可以在不获悉,不改变原来代码的情况下往里面添加新的方法,只能添加,不能删除原有方法,但是无法添加实例变量
延展:延展可以同时添加实例变量和方法,而且添加的方法必须实现,可以视为一个私有的类目
协议:协议是多个类共享的一个发方法列表,在协议中所列出的方法没有响应的实现
继承:不但可以添加实例变量和方法,也可以重写原有类的方法
 
用一个autorelease  必须在@autoreleasepool{   }中使用
 
请完成声明一个返回值是bool类型,并且带两个字符串对象的BLOCK类型变量
BOOL (^ablock)(NSString *str1 , NSString *str2);
为BLOCk变量赋值,使该变量具有判断两个字符串对象是否相等的功能;并使用该BLOCK变量测试两个字符串@“Abc”,@“abc”是否相等
BOOL (^ablock)(NSString *str1,NSString *str2);
ablock = ^(NSString *str1,NSString str2)
{
if([str1 isEqualTOString:str2])
{
return YES;
}
return NO;
}
NSLog(@“%@“,ablock(@“Abc”,@“abc”)?@“一样”:@“不一样”);

oc小总结的更多相关文章

  1. OC小实例关于init 方法不小心的错误

    OC小实例关于init 方法不小心的错误  正视遇到的每一个错误 在一个遥控器类操控小车玩具的小实例项目中,我采用组合的方式,将遥控器拥有小汽车对象(has a)关系,而不是继承(is a)关系. 想 ...

  2. ios开发之OC基础-oc小程序

    本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...

  3. c和oc小知识

    1.const const 修饰了*p1 / *p2 const int * p1=&age; int const * p2=&age;//和上面的意义一样 ,换句话说就是 在 “ * ...

  4. OC小实例关于init方法不小心的错误

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  5. OC录制小视频

    OC录制小视频 用 AVCaptureSession + AVCaptureMovieFileOutput 来录制视频,并通过AVAssetExportSeeion 手段来压缩视频并转换为 MP4 格 ...

  6. OC基础--多态 及 三特性小练习

    什么是多态 什么是多态: 多态就是某一类事物的多种形态 猫: 猫-->动物 狗: 狗-->动物 男人 : 男人 -->人 -->动物 女人 : 女人 -->人 --> ...

  7. runtime使用小例子 - 给对象O-C属性赋值

    这些日子在家里学习runtime,看runtime的一些方法和前辈们的博客,我也尝试着写几个runtime有效的运用 一.给对象属性赋值,例如一个WebEntity类 她有三个属性:NSString. ...

  8. 第五十九篇、OC录制小视频

    用 AVCaptureSession + AVCaptureMovieFileOutput 来录制视频,并通过AVAssetExportSeeion 手段来压缩视频并转换为 MP4 格 AVFound ...

  9. oc学习之路----application.keyWindow.rootViewController与self.window.rootViewController与[self.window makeKeyAndVisible];小发现

    刚才调试的时候除了一些小问题,有一段代码要重用 NSString *key = @"CFBundleVersion"; // 取出沙盒中存储的上次使用软件的版本号 NSUserDe ...

随机推荐

  1. C- printf的使用

    ASC C之后引入的一个特性是,相邻的字符可以被自动连接 /* printf.cc * 2014/09/02 update */ #include <iostream> using nam ...

  2. 构建者模式(Builder)示例代码

    package com.test; /** * Created by xiaonanhai on 2015/5/30. */ public class Builder { private String ...

  3. [网络技术][转]PPTP连接过程

    转自:http://blog.csdn.net/zhu_hit/article/details/5698958 在未来几天会总结一下PPTP的工作过程,分为以下3篇讲述. 1. PPTP连接过程: 2 ...

  4. Linear Predictors

    In this chapter we will study the family of linear predictors, one of the most useful families of hy ...

  5. iis提示“另一个程序正在使用此文件,进程无法访问。(异常来自HRESULT:0x80070020)

    看看IIS的网站,惊人的发现default web site是停止状态.印象中没有停止它啊.右键->管理网站->启动.点击启动后居然弹出:“另一个程序正在使用此文件,进程无法访问.(异常来 ...

  6. 监听cell 滑动到 摸个分区

    //滑动过程中 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { //    NSLog(@"000---%ld", ...

  7. Mysql 基本操作连接数据库读取信息内容

    <?php header("content-type:text/html; charset=utf-8"); // 数据库配置信息 define("DB_HOST& ...

  8. mysql innoDB 与 myISAM

    转载文章 出处  http://www.pureweber.com/article/myisam-vs-innodb/ 使用MySQL当然会接触到MySQL的存储引擎,在新建数据库和新建数据表的时候都 ...

  9. shell脚本入门教程(转)

    http://bbs.chinaunix.net/thread-391751-1-1.html http://www.cnblogs.com/suyang/archive/2008/05/18/120 ...

  10. 自动获取UILabel的宽度高度

    在使用UILabel存放字符串时,经常需要获取label的长宽数据,本文列出了部分常用的计算方法. 1.获取宽度,获取字符串不折行单行显示时所需要的长度 CGSize titleSize = [aSt ...