文档章节

第01天OC语言(07):第一个OC方法

lyh2017iOS
 lyh2017iOS
发布于 2017/07/10 00:52
字数 484
阅读 1
收藏 0
点赞 0
评论 0

#####一、概念

#####二、代码

#import <Foundation/Foundation.h>
#pragma mark 类
/*
 事物名称:iPhone
 属性:颜色,型号,cpu,尺寸       == 成员变量
 行为:打电话,发短信,上网       == 成员方法
 
 */
@interface IPhone : NSObject
{
    @public
    float _model;    // 型号
    int _cpu;        // cpu
    double _size;    // 尺寸
    int _color;      // 颜色
}
/* 行为
 OC 中的行为 和 C语言中的函数一样,都是用来保存 一段特定功能的代码
 C语言中定义一个函数, 分为声明 和 实现 , 声明写在.h中, 实现写在.c中
 OC 定义一个方法, 也分为声明 和 实现, 声明写在 @interface中, 实现写在@implementtation
 
 C语言的函数分为两种 : 内部函数 和 外部函数
 OC中的方法也分为两种 : 类方法 和 对象方法
 类方法 只能用类名调用, 对象方法只能用对象调用
 OC中的类方法用 +表示, OC中的对象方法 用-表示
 
 
 编写C语言函数的规律 : 1.确定函数名称 2.确定形参 3.确定返回值 4.确定返回值类型
 编写OC方法也有规律, 规律和C语言一模一样
 */

//void test()
//{
//    
//}

// 注意 : OC中的方法,如果没有形参 不需要写(),而是直接写一个;
// 为什么OC中 没有形参不需要写()呢? 因为OC方法中的()有特殊的用途,OC方法中的()是用来扩住数据类型的
-(void)about;
@end


#pragma mark 实现

@implementation IPhone
// 行为的实现
-(void)about
{
    NSLog(@"打印本机信息\n");
}
@end


#pragma mark main函数
int main(int argc, const char * argv[])
{
    // 通过类创建对象
    IPhone *p = [IPhone new];
    // 修改对象的属性
    p->_model = 4;
    p->_size = 3.5;
    p->_color = 0;
    p->_cpu = 1;
    
    // 获取对象的属性
    NSLog(@"model = %f, size = %f,color = %i,cpu = %i",p->_model, p->_size,p->_color,p->_cpu );
    
    // 如何给对象发消息(如何调用对象的方法)
    //[类名/对象名 方法名称];
    [p about];
    
      return 0;
}

© 著作权归作者所有

共有 人打赏支持
lyh2017iOS
粉丝 1
博文 357
码字总数 137380
作品 0
朝阳
实战OCS 2007、Exchange 2007 、VOIP整合(一)

实战OCS 2007、Exchange 2007 、VOIP整合(一) ([url]http://godoha.blog.51cto.com[/url] by Weihu.Yen 2009-3-31) 此篇文档:只涉及到OCS与VOIP整合,未提到与Exchange 2007整合!后续整理,再放......

技术小牛人
2017/11/23
0
0
Native code support (Native Code(C和C++)支持)

1. WP 8和Win 8之间共享native代码 通过 Windows 运行时组件,可以在 Windows 应用商店和 Windows Phone 应用程序之间共享Native coad。由于windows phone 8和Windows 8没有共享所有的Windo...

失足处男的倒霉孩子
2013/12/26
779
0
Swift4.0基础知识回顾

简单介绍一下Swift Swift 语言由苹果公司在 2014 年推出,用来撰写 OS X 和 iOS 应用程序,Swift语言让应用开发更简单、更快、更稳定,确保最终应用有着更好的质量更多了解Swift可以去《The...

博行天下
2017/12/06
0
0
OC语言的特性(一)-消息传递与调用函数的表现形式

我们在初学Objective-C时,都会觉得ObjC中的消息传递和其他语言的调用函数差不多,只是在OC中,方法调用用消息传递这一概念来代替。 那么到底怎样区别OC中的消息传递与其他语言的调用函数呢。...

浩浩老师
2015/09/08
1K
0
Swift 和 OC 方法互调--SwiftAndOC

SwiftAndOC 是一个Swift 和 OC 方法互调Demo。 Demo功能: 1.在OC项目里: 1.1.OC代码调用Swift方法 1.2.Swift代码调用OC代码。 2.在Swift项目: 2.1.Swift代码调用OC代码 2.2.OC代码调用Swift...

匿名
2016/08/05
226
0
Swift2.0与OC混编实验--动态库(一)

完整的Demo下载 做了以下几个实验 验证Swift和OC的项目可以使用任意语言开发的动态库 1、创建了一个Swift语言的动态库 2、创建了一个OC语言的动态库 3、创建了一个SwiftApp项目,在项目中同时...

泊竹
2016/01/17
434
0
iOS原生App与H5页面交互

第一种:JS给OC传值。 OC里要实现的代码: 拖入JavaScriptCore.framework静态库,遵守代理协议。 在-webViewDidFinishLoad:方法里编写如下代码: 其中 passValue 是JS的函数名,得到的 arg数...

啊子同
2016/10/22
87
0
Object-C基础-02-第一个OC的类

一、语法简介 1.类 在Java中,我们用1个.java文件就可以描述清楚一个类;在OC中,一般用2个文件来描述一个类: 1> .h:类的声明文件,用于声明成员变量、方法。类的声明使用关键字@interfac...

Corwien
2016/03/17
22
0
IOS,objective_C中用@interface和 @property 方式声明变量的区别

转自http://www.cnblogs.com/letmefly/archive/2012/07/20/2601338.html 一直有疑问,在objective_C中声明变量会有 2种方式,今天有空和网友讨论了下,并且自己查了stackoverflew后算是稍微弄...

AAAAdler
2012/12/28
0
0
【iOS】Swift类与结构、存储属性、计算属性、函数与方法、附属脚本等

写了12个Person来复习,不过完成同样的代码需要敲键盘的次数相比OC确实少了很多,这很多应该归功于Swift中不写分号,以及少了OC中的中括号。 一、类与结构体 两者在Swift中差不了多少了 类与...

xn4545945
2014/09/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

全新内存布局Android5 for one x

众所周知Android5.0默认ART模式,运行速度加倍,软件占用内存也加倍,我们one x这种元老机采用旧的内存布局,data空间2g ART模式下安装几个软件也就不够用了。最近逛国外的xda论坛,发现有大...

CrazyManDF
8分钟前
0
0
web3j转账

 web3 转账功能   为了完成以太坊交易,必须有几个先决条件   1、对方的以太坊地址   2、确定要转账的金额   3、自己地址的转账权限   4、大于转账金额的以太币,以太币转账其实就...

智能合约
8分钟前
0
0
10.28 rsync工具介绍 , rsync常用选项, rsync通过ssh同步

rsync远程同步 重点!重点!!重点!!! 例子 • rsync -av /etc/passwd /tmp/1.txt • rsync -av /tmp/1.txt 192.168.188.128:/tmp/2.txt rsync格式 • rsync [OPTION] … SRC DEST • rs......

Linux_老吴
22分钟前
0
0
iis php 环境搭建,非常详细的教程

准备篇 一、环境说明: 操作系统:Windows Server 2016 PHP版本:php 7.1.0 MySQL版本:MySQL 5.7.17.0 二、相关软件下载: 1、PHP下载地址: http://windows.php.net/downloads/releases/ph...

T_star
24分钟前
0
0
Day35 rsync通过服务同步

rsync通过服务同步 rsyncd.conf配置文件详解 port:指定在哪个端口启动rsyncd服务,默认是873端口。 log file:指定日志文件。 pid file:指定pid文件,这个文件的作用涉及服务的启动、停止等...

杉下
30分钟前
1
0
【最新最全】为 iOS 和 Android 的真机和模拟器编译 Luajit 库

编译 Luajit 库,的确是一个挑战。因为官网的教程,在当前版本的 Xcode 和 NDK 环境中,已经不适用了。以前只是编译了适用于真机的 Luajit 库。最近在尝试编译模拟器 Luajit 库,就顺便梳理了...

ios122
30分钟前
0
0
rsync至ssh同步

rsync: 文件同步工具,可实现“增量拷贝”;使用yum安装rsync包 常用选项:-a=-rtplgoD (-r同步目录,-t保持文件的时间属性,-p保持文件的权限属性,-l保持软连接,-g保持文件的属组,-o保持...

ZHENG-JY
35分钟前
0
0
TradingView 学习笔记

#前言 公司最后需要使用TradingView展示K线图走势。由于之前没接触过,拿到文档时一脸蒙逼。还好找到二篇文章+Demo代码,直接改改就行了。 #被批 由于上面的懵懂,有个问题困扰4个小时没解决...

hihubs
35分钟前
0
0
10.28 rsync工具介绍~10.31 rsync通过ssh同步

rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而...

洗香香
38分钟前
1
0
卷积为什么要旋转180度

参考《最容易理解的对卷积(convolution)的解释》 https://blog.csdn.net/bitcarmanlee/article/details/54729807 这篇博客详细讲解了“卷积”,提及了为什么要反转180度,我简述下。 1.卷积的...

datadev_sh
47分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部