//

//  main.m

//  OCbasic1

//

//  Created by apple on 14-8-5.

//  Copyright (c) 2014年 苹果IOS软件开发者. All rights reserved.

//

#import <Foundation/Foundation.h>

#import "Dog.h"

int main(int argc, const char * argv[]) {

@autoreleasepool {

// insert code here...

NSLog(@"Hello, World!");

//write code here.

Dog *dog = [[Dog alloc] init];

//创建一个dog对象并初始化

//定义参数,调用方法

int ID = [dog getID];

int age = [dog getage];

float price = [dog getprice];

printf("dog ID: %d age: %d price: %f\n",ID,age,price);

//dog ID: 1 age: 2 price: 60.000000

Dog *dog2 = [[Dog alloc ]initWithID:20 andage:5 andprice:100.88];

ID =[dog2 getID];

age = [dog2 getage];

price = [dog2 getprice];

printf("dog2 ID: %d age: %d price: %f\n",ID,age,price);

//dog2 ID: 20 age: 5 price: 100.879997    return 0;

[dog2 setID:19 andage:4 andprice:86.8];

ID =[dog2 getID];

age = [dog2 getage];

price = [dog2 getprice];

printf("dog2 ID: %d age: %d price: %f\n",ID,age,price);    }

}

//

//  Dog.h

//  OCbasic1

//

//  Created by apple on 14-8-5.

//  Copyright (c) 2014年 苹果IOS软件开发者. All rights reserved.

//

#import <Foundation/Foundation.h>

@interface Dog : NSObject

{

//字段(成员变量)及其访问权限

@protected

int ID;

@public

int age;

@private

float price;

}

//凡是以initXX开头的都是构造函数

- (id) init;

//函数名为init,不带参数

- (id) initWithID:(int)newID;

//函数名为initWith:,带一个int的参数

- (id) initWithID:(int)newID andage:(int)newage;

//函数名为initWithID:andage:,带两个int参数

- (id) initWithID:(int)newID andage:(int)newage andprice:(float)newprice;

//函数名为initWithID:andage:andprince

- (void) setID:(int)newID;

- (int) getID;

//set/get ID

- (void) setage:(int)newage;

- (int) getage;

//set/get age

- (void) setprice:(float)newprice;

- (float) getprice;

//set/get price

- (void) setID:(int)newID andage:(int)newage;

// setID:andage:两个参数

- (void) setID:(int)newID andage:(int)newage andprice:(float)newprice;

// setID:andage:andprice: 3个参数

@end

//

//  Dog.m

//  OCbasic1

//

//  Created by apple on 14-8-5.

//  Copyright (c) 2014年 苹果IOS软件开发者. All rights reserved.

//

#import "Dog.h"

@implementation Dog

- (id)init

{

return [self initWithID:1 andage:2 andprice:60.0];

//    self = [super init];

//    // super表示父类

//    // self 表示对象自己

//    if (self)

//    {

//        ID = 1;

//        age = 2;

//        price = 60.0f;

//    }

//    return self;

}

- (id)initWithID:(int)newID

{

return [self initWithID:newID andage:2];

//    self = [super init];

//    if (self) {

//        ID = newID;

//        age = 2;

//        price = 60.0f;

//    }

//    return self;

}

- (id)initWithID:(int)newID andage:(int)newage

{

return [self initWithID:newID andage:newage andprice:60.0f];

//    self = [super init];

//    if (self) {

//        ID = newID;

//        age = newage;

//        price = 60.0f;

//    }

//    return self;

}

- (id)initWithID:(int)newID andage:(int)newage andprice:(float)newprice

{

self = [super init];

if (self) {

ID = newID;

age = newage;

price = newprice;

}

return self;

}

- (void)setID:(int)newID

{

ID = newID;

}

- (int)getID

{

return ID;

}

- (void)setage:(int)newage

{

age = newage;

}

- (int)getage

{

return age;

}

- (void)setprice:(float)newprice

{

price = newprice;

}

- (float)getprice

{

return price;

}

- (void)setID:(int)newID andage:(int)newage

{

ID = newID;

age = newage;

}

- (void)setID:(int)newID andage:(int)newage andprice:(float)newprice

{

ID = newID;

age = newage;

price = newprice;

}

@end

Object-c基本语法的更多相关文章

  1. 终于懂了:Delphi的函数名不是地址,取地址必须遵守Object Pascal的语法(Delphi和C的类比:指针、字符串、函数指针、内存分配等)good

    这点是与C语言不一样的地方,以前我一直都没有明白这一点,所以总是不明白:函数地址再取地址算怎么回事? ------------------------------------------------- ...

  2. Java提高学习之Object类详解(1)

    转自:http://www.importnew.com/10304.html 问:什么是Object类? 答:Object类存储在java.lang包中,是所有java类(Object类除外)的终极父 ...

  3. Object C和C#的差异

    从C#到Object C,循序渐进学习苹果开发(1)--准备开发账号和开发环境 本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台开发苹果开发的一系列感想和体验历程,本系列文章是在起步 ...

  4. JS apply的巧妙用法以及扩展到Object.defineProperty的使用

    Math.max 实现得到数组中最大的一项 var array = [1,2,3,4,5]; var max = Math.max.apply(null, array); console.log(ma ...

  5. 深入理解 Object.defineProperty 及实现数据双向绑定

    Object.defineProperty() 和 Proxy 对象,都可以用来对数据的劫持操作.何为数据劫持呢?就是在我们访问或者修改某个对象的某个属性的时候,通过一段代码进行拦截行为,然后进行额外 ...

  6. day 50 js-part1基础语法,数据类型及用法,流程控制语句,循环

    js基本概念: JavaScript 是世界上最流行的脚本语言. JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用. JavaScript ...

  7. Object C学习笔记10-静态方法和静态属性

    在.NET中我们静态使用的关键字static有着举足轻重的作用,static 方法可以不用实例化类实例就可以直接调用,static 属性也是如此.在Object C中也存在static关键字,今天的学 ...

  8. iOS 开发系列:CoreData Object 变成 Fault 的一种方式

    @quote: 近来一直与 CoreData 打交道.这是一个架构庞大.学习曲线比較陡峭的 iOS 组件,每次遇到问题都会对其有新的认识. 这次就仅仅讲一点,关于错误认知 Object(NSManag ...

  9. Java:Object类详解

    Java的一些特性会让初学者感到困惑,但在有经验的开发者眼中,却是合情合理的.例如,新手可能不会理解Object类.这篇文章分成三个部分讲跟Object类及其方法有关的问题. 上帝类 问:什么是Obj ...

  10. Android学习笔记_46_Android的intent之间Object、List、List<Object>和全局变量数据的传递(Parcelable Serializable)

    转http://blog.csdn.net/pku_android/article/details/7456305 一.传递List<String>和List<Integer> ...

随机推荐

  1. php+phpspreadsheet读取Excel数据存入mysql

    先生成Excel模板,然后导入Excel数据到mysql,每条数据对应图片上传到阿里云 <?php /** * Created by PhpStorm. * User: Administrato ...

  2. phpmailer使用qq邮箱、163邮箱成功发送邮件实例代码

    以前使用qq邮箱.163服务器发送邮件,帐号直接使用密码,现在不行了,得使用授权码,简单记录下 1.首先开通POP3/SMTP服务,qq邮箱——帐号——设置,找到POP3/SMTP点开启,输入短信会有 ...

  3. jQuery位置操作

    position();获取当前标签相对于最近一个父标签中有positon:relative属性的位置. height();标签纯高度 innerHeight();标签内边距padding加上纯高度 o ...

  4. Delphi 与 C/C++ 数据类型对照表

    Delphi 数据类型 C/C++ ShorInt 8位有符号整数 char Byte 8位无符号整数 BYTE,unsigned short SmallInt 16位有符号整数 short Word ...

  5. TeamViewer 的早期版本下载

    对于10及上以的:https://www.teamviewer.com/zhcn/download/previous-versions/ 5~9的版本下载:https://community.team ...

  6. ALGO-22_蓝桥杯_算法训练_装箱问题(DP)

    问题描述 有一个箱子容量为V(正整数,<=V<=),同时有n个物品(<n<=),每个物品有一个体积(正整数). 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小. 输 ...

  7. AutoCAD的代替软件

    AutoCAD的代替软件Autocad2005以上版本都需要.net framework的支持,安装起来太麻烦,而且卡顿.以下几个软件可以代替Autocad,操作和插件基本都能兼容Autocad.1. ...

  8. 解决MSDE安装回滚的问题

    rem 解决MSDE安装回滚的问题.bat rem 设置为手动rem sc config "LanmanServer" start= DEMAND rem 设置为自动sc conf ...

  9. ApplicationDomain

    ApplicationDomain 类的用途是存储 ActionScript 3.0 定义表.SWF 文件中的所有代码被定义为存在于ApplicationDomain 中.在使用 Loader 类 A ...

  10. Ubuntu 14.10 下Hadoop HttpFS 配置

    因为hadoop集群中需要配置一个图形化管理数据的截面,后来找到HUE,那么在配置HUE的过程中,发现需要配置httpfs,因为配置了httpfs,hue才能去操作hdfs中的数据. HttpFs能干 ...