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

Objective C interface(objective什么意思)

maynowei2周前 (08-02)技术知识14

在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,只包含了一个方法。

相关文章

在手机上演示axure原型(怎么在axure中画出手机原型)

AXSHARE APP发布啦,以后大家的原型可以通过这款APP进行预览演示咯。小编迫不及待的体验了一下这款APP。要使用这款APP,首先需要有axshare的账号。账号注册地址:https://sha...

成功上岸腾讯运营,教你如何写校招简历?

产品策划/运营的校招简历应该怎么写?作者从自身实际情况出发,总结分享了相关经验,希望对你有用。写在前面红红火火恍恍惚惚,本人是一位2020届本科毕业生,校招意向互联网产品类。此前有过产品相关的项目&a...

真来了,iOS 16.6 beta 利用,隐藏 Dock 栏

昨天提到!iOS 16.5 kfd 漏洞可以隐藏 Dock 栏消息,现在已经确定 iOS 16.6 beta 内测也是支持使用 kfd 漏洞,当然!也是支持隐藏 Dock 栏,主要验证该系统是否可用。...

Xamarin.Android使用教程:列表视图和适配器(2)

昨天我们已经一起学习了第1部分,这是探索Xamarin.Android的列表视图和适配器的的第2部分。在今天的文章中我们将探讨列表视图项排列使用BaseAdapter,还有自定义布局。让我们深入到代码...

webview 渲染机制:硬件加速方式渲染的Android Web

webview 渲染是什么?webview 渲染是用于展现web页面的控件; webview 可以内嵌在移动端,实现前端的混合式开发,大多数混合式开发框架都是基于 webview 模式进行二次开发的w...

Android主流UI开源库整理(android完整开源项目)

前言最近老大让我整理一份 Android主流UI开源库 的资料,以补充公司的Android知识库。由于对格式不做特别限制,于是打算用博客的形式记录下来,方便查看、防丢并且可以持续维护、不断更新。标题隐...