zoukankan      html  css  js  c++  java
  • Total review of Objective--C

    1. /*
          什么是面向对象?
       &OOP(Object Oriented Programming)
       &创建类、得到对象。从类中实例化对象。
       */
    2.  //实例化对象
              /*
               [类名 方法名]alloc - 为对象分配内存空间
               [对象名 方法名]init - 进行初始化操作
               */
    3. //姓名、年龄、性别
      //类内使用成员变量,类外使用属性
      //属性是为了让类外可以访问成员变量
      //属性就是成员变量的接口
      //类内调用成员变量而不是属性,属性是给类外使用的
    4. //实例方法和类方法可以相互调用。
      //实例方法中可以调用类方法,可以调用成员变量
      //类方法中调用实例方法会造成死循环导致程序崩溃,不能调用实例方法。不能调用成员变量,可以调用静态变量。
    5. 什么是封装?为什么要封装?封装的好处?
    6. 【成员变量】访问修饰符的问题: 默认 - 受保护

      1)@public  公有 --在类内类外都可以使用并且可以被继承,在类外使用【指向】来调用类内的成员变量

      2)@private   私有--在类内可以使用,类外无法被调用且不可以被继承

      3)@protected  受保护--在类内可以使用,类外无法调用并且可以被继承

      4)@package  框架权限--在框架内相当于受保护,在框架外相当于私有。

      注:方法没有访问修饰符,同C语言一样

      7. NSObject -- 基类

      多态中:super 调用父类方法  self 调用当前类方法

     1 #import <Foundation/Foundation.h>
     2 
     3 int main(int argc, const char * argv[])
     4 {
     5     @autoreleasepool
     6     {
     7         /*
     8          NSString字符串比较:
     9          比较字符串大小:compare方法返回的结果有三种:NSOrderedAscending(前小后大)
    10          ,NSOrderedSame,NSOrderedDescending(前大后小)
    11          比较原则:取出每个字符,比较每个字符ASCII码大小
    12          注:在OC中使用“==”;是不能比较字符串内容是否相等的,判断字符串内容是否相等,区分大小写,使用的是isEqualToString:。返回值是BOOL类型
    13          检查字符前缀方法 hasPrefix:    检查后缀方法 hasSuffix:
    14          NSArray:
    15          只能存储任意的OC对象,并且是有顺序的
    16          他是不可变的,一旦初始化完毕后,它里面的内容就永远固定了,不能删除里面的元素,也不能添加里面的元素。
    17          NSDictionary:
    18          字典的key值和value值,都必须是对象,不能是基本类型数据
    19          键值对不能重复,重复了也不能报错,后出现的不能保存在字典中
    20          NSFileManager:
    21          使用了单例模式singleton
    22          1) 判断文件是否存在
    23          调用defaultManager创建一个文件管理的单例对象
    24          单例对象:在程序运行期间只有一个对象存在
    25          NSFileManager *fm =[NSFileManager defaultManager];
    26          BOOL isYES=[fm fileExistsAtPath:filePath(路径字符串)];
    27          2) 判断是否是一个目录
    28          [fm fileExistsAtPath:filePath isDictionary:&isDir];
    29          3) 判断文件是否可读
    30          IsYES= [fm isReadableFileAtPath:filePath];
    31          4) 是否可写
    32          IsYES= [fm isWritableFileAtPath:filePath];
    33          */
    34         NSString *str1 = @"abc";
    35         NSString *str2 = @"Abc";
    36         
    37         NSComparisonResult result = [str1 compare:str2];//(这个函数是区分大小写的)
    38         NSComparisonResult result1 = [str1 compare:str2 options:NSCaseInsensitiveSearch];//这个函数不区分大小写
    39         NSComparisonResult result2 = [str1 compare:str2 options:NSCaseInsensitiveSearch|NSNumericSearch];//增加字符个数比较,可以增加限制条件
    40         NSLog(@"result = %ld", result);
    41         NSLog(@"result1 = %ld", result1);
    42         NSLog(@"result2 = %ld", result2);
    43         
    44         
    45     }
    46     return 0;
    47 }
  • 相关阅读:
    [bzoj3123] [Sdoi2013]森林
    [bzoj2173] 整数的lqp拆分
    Linux
    使用高德地图API
    EF具体用在什么类型的项目上
    出现Data Tools 与VS 不兼容问题
    Entity FramWork
    Entity
    Entity
    BASH
  • 原文地址:https://www.cnblogs.com/songlei0601/p/5754827.html
Copyright © 2011-2022 走看看