——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
创建某些特定类的对象,OC编译器需要知道一些该类的信息,特别是必须知道对象的实例变量和它提供的特性,这时可以使用@interface把这些信息传递给编译器。
<span style="font-size:24px;">@interface Calclator : NSObject
{
    @public
    
    int _num1;
    int _num2;
}
-(int) sum;                    //无参方法
-(int) sum:(int)x and:(int)y;  //有参方法
@end</span>
知识点:@public表示实例变量都是公开的。( @private 私有的 @protected 受保护的)
“-”表示此方法是一个对象方法。
(int)x 括号内为参数的类型,可以添加多个参数。and并不是固定的,可以命名其他,“ : ”也是方法名的一部分。
 
@implementation表示你将为这些类方法做实现:
 
<span style="font-size:24px;">@implementation Calclator
-(int) sum {
    return _num1 + _num2;
}
-(int) sum:(int)x and:(int)y{
    return x + y;
}
@end</span>
知识点:方法的实现只需要在方法声明中将“ ;”改成“ {} ”
方法的返回值为int类型,应return相应的int类型值。
 
方法的调用:
<span style="font-size:24px;">int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Calclator *ca1 = [Calclator  new];
        
        ca1->_num1 =  1;
        ca1->_num2 = 2;
        int s = [ca1 sum ];
        NSLog(@"%d",s);
        s = [ca1 sum:42  and:39];
        NSLog(@"%d",s);
    }
    return 0;
}</span>
运行结果:3 81
知识点:[Calclator new] 在内存中干三件事:
1.开辟存储空间
2.初始化成员变量(写在类声明大括号中的属性就叫成员变量,也叫实例变量)
3.返回指针地址
类的对象可以用“—>”来为实例变量赋值
对象方法只能由对象来调用
 
                  
                  
                  
                  
本文介绍了Java培训、Android培训、iOS培训、.Net培训等内容,并详细解释了@interface和@implementation在Objective-C中的使用方法,包括类的实例变量声明、方法的定义与实现,以及如何在内存中创建对象并调用其方法。
          
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					510
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            