zoukankan      html  css  js  c++  java
  • OC基础 未命名类别

    未命名类别

    在()中不指定类别的名字

    可以定义附加的实例变量

    声明的方法需要在主实现区域实现

    实例变量和方法都是私有的

    如果想要写一个类,而且数据和方法仅供给这个类本身使用,未命名类比较适合

    优点: 分解大块代码 为类做扩展  

    .h

    #import <Foundation/Foundation.h>
    
    NS_ASSUME_NONNULL_BEGIN
    
    @interface UnNameCategoty : NSObject
    @property int i;
    -(void)func1;
    -(void)func2;
    @end
    
    NS_ASSUME_NONNULL_END

    .m

    #import "UnNameCategoty.h"
    //未命名类别
    @interface UnNameCategoty()
    @property float f;
    -(void)fun3;
    
    @end
    
    
    // 只能放在类的实现中
    
    @implementation UnNameCategoty
    
    -(void)fun1
    {
        NSLog(@"func1");
    }
    -(void)fun2
    {
        NSLog(@"fun2");
        [self setF:20.5];
        [self fun3];
    }
    
    -(void)fun3
    {
        NSLog(@"func3");
        
    }
    
    
    @end

    main

    #import <Foundation/Foundation.h>
    #import "UnNameCategoty.h"
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            // insert code here...
            NSLog(@"Hello, World!");
            UnNameCategoty* category=[[UnNameCategoty alloc]init];
            [category setI:40];
            
            //未命名方法成员和方法都是私有的
            
    //        [category self:10];
            
            [category func1];
            [category func2];
            [category func3];
            
            
            
            
            
            
            
        }
        return 0;
    }
  • 相关阅读:
    gcc和g++的区别和联系
    Linux基础命令第二天
    Linux基础命令第一天
    Flask入门之完整项目搭建
    Flask入门第三天
    Flask入门第二天
    Flask入门第一天
    vue_drf之多级过滤、排序、分页
    vue_drf之视频接口
    vue_drf之支付宝接口
  • 原文地址:https://www.cnblogs.com/zhangqing979797/p/13221976.html
Copyright © 2011-2022 走看看