zoukankan      html  css  js  c++  java
  • 三.OC基础--1.NSString的创建和使用,2多文件开发,3类方法,4封装

    三:OC--1.NSString的创建和使用,

      1,创建常量字符串,注意使用“@“符号。
        NSString *astring = @"This is a String!"; //后面的是常量,前面的是指针变量

      2,NSString *s1 = [NSString new];//没有意义
        s1 =@"jian le ma";

      3、创建字符串的第三种方法
        // 格式化创建字符串(按照指定的格式创建字符串)
        NSString *imgName = [NSString stringWithFormat:@"xxxxxx%02d.jpg",i];

      4、用一个已经存在的字符串创建一个新的字符串
        NSString *s2 = [[NSString alloc] initWithString:s1];


      5.NSString长度计算方法.
        NSString *str = @"ban长";
        [str length]; // 4

    2多文件开发,

      1、为什么要使用多文件?
        在开发当中实现的功能一般会比较复杂, 所以会将类分成声明(.h文件)和实现(.m文件)部分,
        在.h文件中写:成员变量和方法的声明, 在.m文件中写:成员变量和方法的实现.
        这样写大大提高开发效率, 提高代码的维护性.

    3类方法,

      一. 特点:
      1. 以加号( + )开头,
      2. 调用格式: [类名 方法名]

      二. 注意事项:
      1. 类方法可以和实例方法同名, 相互之间互不影响

      2. 类方法可以从父类继承而来,子类可以重写类方法 // ,如description类方法

      3. 类方法和实例方法一样在interface里声明, 在implementation里实现。

      4. 类方法由类名调用, 实例方法由对象调用。

      5. 在类方法里使用了self, self指代的是调用者类

      6. 在类方法中不能使用类的成员变量

      7. 类方法和对象方法之间不能使用self 相互调用

      总结self : 谁调用当前方法, self就代表谁


      三. 类方法和对象方法的比较
      1. 对象方法以减号开头, 可以使用成员变量
      2.类方法以加号开头,不能使用成员变量

      四. 类方法使用场景
      如果我们调用一个方法,该方法中不需要使用成员变量,那么我们可以将该方法声明为类方法


      五. 匿名对象
      匿名对象的使用场景: 当对象的方法只调用一次时,可以使用匿名对象来完成。

      匿名对象优缺点 :
      优点: 可以简化代码,方便方法调用;节省内存空间
      缺点: 匿名对象实例化以后,只能正确的使用一次成员变量;

    4封装

      一. 什么是封装:
      1. 封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式

      二. 封装的好处:
      1. 将变化隔离。(不管里面怎么变,使用者不需要知道)
      2. 便于使用。(使用者只需按照一定的方法使用就可以了)
      3. 提高重用性。(任何人都可以对已封装好的功能进行操作)
      4. 提高安全性。(由于暴露给使用者的只是一些外在的操作环节,而不是里面本质的东西,所以就提高了对他的维护性,也就是安全性)

      三. 封装的原则:
      1.将不需要对外提供的内容都隐藏起来。
      2.把属性都隐藏,提供公共方法对其访问。


      四. setter方法的实现
        set方法的书写规范:
          1) set方法一定是一个对象方法
          2) set方法一定不能有返回值
          3) set方法必须以set开头
          4) set之后跟的是 实例变量去掉下划线,并且首字母大写
          5)set方法一定有参数,而且参数的类型和实例变量的类型一致
          6) set方法的形参名 一般是 去掉下环线的实例变量名
          7)形参名不能和 实例变量名同名
          8) set方法实现中,一定要用形参给实例变量赋值

        成员变量: int _age; 的setter方法
        -(void)setAge:(int)age{

          _age = age;
        }

       get方法书写规范:
        1) get方法一定是一个对象方法
        2) get方法一定有返回值,返回值的类型和实例变量的类型要一致
        3) get方法的方法名 是去掉下环线的实例变量名
        4) get方法一定没有参数
        5) get方法的实现中,一定是返回实例变量值

      成员变量: int _age; 的setter方法
        -(int)age{
          return _age;
        }

  • 相关阅读:
    好用的开源库(一)——MaterialEditText
    Android开发——Notification通知的各种Style详解
    Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API
    【转】Android开发笔记(序)写在前面的目录
    【转】NotificationCopat.Builder全部设置
    Git的简单的基本使用
    Android开发——BroadcastReceiver广播的使用
    【转】Android 开发规范(完结版)
    Android开发——使用intent传递对象
    【升级至sql 2012】sqlserver mdf向上兼容附加数据库(无法打开数据库 'xxxxx' 版本 611。请将该数据库升级为最新版本。)
  • 原文地址:https://www.cnblogs.com/jiayongqiang/p/5095111.html
Copyright © 2011-2022 走看看