zoukankan      html  css  js  c++  java
  • ios 基础学习二

    1:@property  @synthesize 属性(类似java里的get set)

    上面那个类原先的实现是这样:
    
    #import  
     
    @interface Photo : NSObject {  
     
    NSString* caption;  
     
    NSString* photographer;  
     
    }  
     
    - (NSString*) caption;  
     
    - (NSString*) photographer;  
     
    - (void) setCaption: (NSString*)input;  
     
    - (void) setPhotographer: (NSString*)input;  
     
    @end  
    
    假如用属性来实现就是这样:
    
    #import  
     
    @interface Photo : NSObject {  
     
    NSString* caption;  
     
    NSString* photographer;  
     
    }  
     
    @property (retain) NSString* caption;  
     
    @property (retain) NSString* photographer;  
     
    @end  
     
    @property是Objective-C来声明属性的编译指令。括号里面的"retain"指明了setter需要retain输入的对象。这行其他的部分指定了属性的类型以及名字。
    
    
    下面让我们来看看这个类的实现:
    
    #import "Photo.h"  
     
    @implementation Photo  
     
    @synthesize caption;  
     
    @synthesize photographer;  
     
    - (void) dealloc  
     
    {  
     
    [caption release];  
     
    [photographer release];  
     
    [super dealloc];  
     
    }  
     
    @end  
     
    @synthesize指令自动的生成了我们的setters和getters。所以我们只需要实现类的dealloc方法。
    
    Accessors只有当他们原先没有的时候,才会被生成。所以可以放心大胆的去用@synthesize来指定属性。而且可以随意实现你自己的getter和setter。编译器会自己去找哪个方法没有。
    View Code

     2:沙盒概念

     IOS沙盒机制 

     IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像, 属 性列表,文本文件等。

    1.1、每个应用程序都有自己的存储空间 

    1.2、应用程序不能翻过自己的围墙去访问别的存储空间的内容 

    1.3、应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行。     

     通过这张图只能从表层上理解sandbox是一种安全体系,应用程序的所有操作都要通过这个体系来执行,其中核心内容是:sandbox对应用程序执行各种操作的权限限制

    注意

        (1)、应用程序可以在自己的沙盒里运作,但是不能访问任何其他应用程序的沙盒。

        (2)、应用程序间不能共享数据,沙盒里的文件不能被复制到其他应用程序文件夹中,也不能把其他应用程序文件夹中的文件复制到沙盒里。

        (3)、苹果禁止任何读、写沙盒以外的文件,禁止应用程序将内容写到沙盒以外的文件夹中。

        (4)、沙盒根目录里有三个文件夹:Documents,一般应该把应用程序的数据文件存到这个文件夹里,用于存储用户数据或其他应该定期备份的信息。Library,下有两个文件夹,Caches存储应用程序再次启动所需的信息,Preferences包含应用程序偏好设置文件,不过不要在这里修改偏好设置。temp,存放临时文件,即应用程序再次启动不需要的文件。

    获取上面对应路径的方法:

    1、用NSHomeDirectory获取

    2、(1)用用户名获取

     (2)、获取Document路径

    (3)、获取tmp路径

    (4)、获取cache路径

     

  • 相关阅读:
    数据结构总结(UPDATING......)
    课件例题4.11,4.12
    Luogu P1525 关押罪犯
    Luogu P1540 机器翻译
    Luogu P1313 计算系数
    Luogu P1311 选择客栈
    Luogu P1519 穿越栅栏 Overfencing
    Luogu P2863 [USACO06JAN]牛的舞会The Cow Prom
    Tarjan学习笔记
    Luogu P3393 逃离僵尸岛
  • 原文地址:https://www.cnblogs.com/yujian-bcq/p/4515460.html
Copyright © 2011-2022 走看看