Objective-C快速入门

目前工作需要,简单了解了下OC

Objective-C的方法与函数


  • 方法是唯对象所有
  • 函数是不依赖与对象存在的

方法
- (void)test;
类型要用()括起来声明
必须写在@interface- @ end之间,实现必须写在@ implementation- @ end之间
只能由对象来调用
可以直接访问成员变量

Objective-C的成员方法与类方法

  • 成员方法以” - “开头
  • 类方法以“+”开头
  • 成员方法必须使用对象调用,即C ++非静态成员函数
  • 类方法可以直接使用类名调用,即C ++静态函数
成员方法:- (void)test;
类方法: + (void)test; 

不带参数的方法

  • 声明
@interface NumUtil:NSObject
- (double)pi;
  • 实现
@implementation NumUtil
- (double)pi
 {
    return 3.14;
 }
  • 调用
NumUtil *n = [NumUtil new];
NSLog(@"%f",[n pi]);

带有一个参数的方法

@interface NumUtil : NSObject
- (int)square:(int)num
@end

@implementation NumUtil
-(int)square:(int)num
{
    return num * num;
}
@end

NumUtil *n = [NumUtil new];
NSLog(@"%d",[n square:2]);

带有多个参数的方法

@interface NumUtil : NSObject
- (int)addNum1:(int)num1 addNum2:(int)num2;
@end

@implementation NumUtil
- (int)addNum1:(int)num1 addNum2:(int)num2
{
    return num1 + num2;
}
@end

NumUtil *n = [NumUtil new];
NSLog(@"%d",[n addNum1:1 addNum2:2]);

冒号“:”后面是参数
有几个冒号就有几个参数
空格后到冒号前的内容(不算类型)就是方法名

- (int)addNum1:(int)num1 addNum2:(int)num2 --> 函数名为addNum1:addNum2

附代码:

//
//  main.m
//  
//  Created by gyz on 2018/8/24.
//  Copyright © 2018年 gyz. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface NumUtil : NSObject

- (double)pi;
- (int)square:(int)num;
- (int)addNum1:(int)num1 addNum2:(int)num2;

@end

@implementation NumUtil

- (double)pi
{
    return 3.14;
}

- (int)square:(int)num
{
    return num * num;
}

- (int)addNum1:(int)num1 addNum2:(int)num2
{
    return num1 + num2;
}

@end

int main(int argc, const char * argv[])
{
    NumUtil *NumTest = [NumUtil new];

    double PI = [NumTest pi];
    NSLog(@"%f",PI);
    int numSquare = [NumTest square:5];
    NSLog(@"%d",numSquare);
    int numAdd = [NumTest addNum1:6 addNum2:7];
    NSLog(@"%d",numAdd);

    return 0;

}

读罢,是不是感觉OC很简单,语言都是相通的!

猜你喜欢

转载自blog.csdn.net/gaoyz1/article/details/82016578