zoukankan      html  css  js  c++  java
  • oc-21-class对象

    /**
     什么是类对象(Class对象)?
     类在内存当中也是以对象形式进行存储的.
     
     1.类对象的类型:Class类型
     
     2.如何创建类对象:
     1)Class 类对象名 = [类名 class];
    
     2)类名 *对象名 = [类名 new];
       Class 类对象名 = [对象名 class];
     
     3)只要用1个类创建的多个类对象,地址都一样.
     
     3.如何使用类对象
     1)用类对象创建对象.
     2)用类对象调用类方法
     3)用类对象调用对象方法.---不能调用对象方法
     4)访问成员变量  -- 不能访问成员变量.
     
     
     */
    #import <Foundation/Foundation.h>
    #import "Person.h"
    #import "Student.h"
    
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            // 1.获取类对象
            Class c = [Person class];
            // 2.调用类方法
            [c test];
        }
        return 0;
    }
    // 用类对象创建对象,访问方法
    void test2(){
        // 1.获取类对象
        Class c = [Person class];
        // 2.用类对象创建对象
        Person *p = [c new];
        // 3.访问方法
        [p test];//对象方法
    }
    // 类对象可以创建对象
    void test1(){
        // 1.获取类对象
        Class c = [Person class];
        // 2.用类对象创建对象
        Person *p = [c new];
        // 3.调用方法
        [p test];
    }
    
    // 如何得到类对象
    void test(){
        // 1.获取类对象的方法
        Person *p = [Person new];
        Class c = [p class];
        // 2.获取类对象的方式
        Class c1 = [Person class];
        NSLog(@"c:%p,c1:%p",c,c1);//c,c1的地址是一样的,都就是Person类。
    }
  • 相关阅读:
    二进制,八进制,十进制,十六进制之间的转换
    Ajax
    JSP
    事务
    BDUtils
    LG. 1003 铺地毯
    Educational Codeforces Round 25
    POJ.3268 Silver Cow Party (Dijkstra)
    POJ.1797 Heavy Transportation (Dijkstra变形)
    POJ. 2253 Frogger (Dijkstra )
  • 原文地址:https://www.cnblogs.com/yaowen/p/5310748.html
Copyright © 2011-2022 走看看