当前位置:首页 > 技术知识 > 正文内容

Objective C interface(objective什么意思)

maynowei10个月前 (08-02)技术知识160

在Objective C里面,interface基本可以理解为其他语言里面的class。

当然也有些不同。

首先我们可以新建一个Objective-C的file。



这里我们添加一个MyClass.m和一个MyClass.h文件。

使用@interface 来定义一个类,使用@implementation来写实现。

MyClass.h

#import <Foundation/Foundation.h>

@interface MyClass : NSObject
- (void) hello;
@end

MyClass.m

#import "MyClass.h"
#import <Foundation/Foundation.h>

@implementation MyClass

- (void) hello {
    NSLog(@"HelloWorld");
    return;
}

@end

这里定义了一个方法hello,没有输入参数,也没有返回值,答应log "HelloWorld"。


#import用于引入头文件,和C的#include类似,只是#import本身可以保证相同的文件只被包含一次。不用像C语言一样,使用宏来控制头文件引入一次。

主程序如下:

#import <Foundation/Foundation.h>
#import "MyClass.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        MyClass *myClass = [[MyClass alloc] init];
        [myClass hello];
    }
    return 0;
}

使用alloc和init方法来构造MyClass的一个实例。调用myClass的hello方法来输出"HelloWorld"。在Objective-C里面成为发送一个hello消息。


运行结果如下。

这是一个基本的@interface,只包含了一个方法。

相关文章

Objective-C :Category(category什么意思)

Category 引入在日常的开发中,可能会碰到这样的需求:给某个类增加方法。比如说,需要给NSString类增加一个打印的方法。当然,我们可以新建一个类比如TestString,并继承NSStrin...

大势所趋:Swift受欢迎度即将赶超Objective C

Swift是Apple在WWDC2014所发布的一门编程语言,用来撰写OS X和iOS应用程序。不到两年时间,在iOS开发者中Swift语言便凭借着简洁的语法和优秀的特性打动了开发者,之前用于iOS和...

[三菱PLC] 用&quot;C语言&quot;玩转PLC,三菱PLC使用ST语言超详细教程

ST语言,全称为结构化文本(Structured Text),是一种高级编程语言,专为工业自动化和控制系统设计。我们学习PLC一般是用梯形图,梯形图学会后,学习SFC,但是我发现梯形图和SFC虽然简单...

Android让视图折叠(安卓叠加视图设置)

Android UI Libs之ExpandableLayout1. 说明ExpandableLayout,顾名思义,可扩展的布局,是一个可以帮助我们实现折叠功能的第三方库,折叠时,只显示头部,打开时...

分析 Rust 程序的火焰图(rust火吗)

分析 Rust 程序的火焰图(Flame Graph)是定位性能瓶颈的核心手段,其核心是通过可视化的函数调用栈和时间分布,找到 CPU 耗时、内存分配、锁竞争等热点。以下是详细的分析方法和步骤,结合...

关于异步信号安全(下面关于异步电路危害的描述错误的是)

线程安全与重入以及异步信号安全的区别. 可重入一定是线程安全的,但是线程安全不一定是可重入的. 引用别人的博客中的话吧.如下: http://blog.csdn.net/xiaofei0859/art...