问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

类的合理设计 补充:结构体和Dog类的set get方法

发布网友 发布时间:2022-12-30 03:19

我来回答

1个回答

热心网友 时间:2023-10-28 21:20

main.m

#import <Foundation/Foundation.h>

#import "Student.h"

#import "Dog.h"

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

{

Student *s = [Student new];

Dog *dog = [Dog new];

//  s->weight = 60;

//  s->sex = SexWoman;

//  s->favColor = ColorGreen;

//  s->birthday.year = 1995;

//  s->birthday.month = 2;

//  s->birthday.day = 1;

//  [s run];

//  [s eat];

//  [s print];

//  dog->weight = 20;

//  dog->curColor = ColorGreen;

//  [s eatDog];

//  [s playDog];

//  [dog run];

//  [dog eat];

date b = {2001,02,01};

[s setBirthday:b];

[s birthday];

return 0;

}

Student.h

/*

类名:Student

属性:性别,生日,体重,喜欢的颜色,狗(体重,毛的颜色,吃,跑)

方法:吃,跑步,喂狗,遛狗

*/

#impprt <Foundation/Foundation.h>

@class Dog;

typedef enum //枚举

{

SexMan, //枚举常量命名一般以枚举类型的名称开头

SexWoman //枚举每项以逗号隔开,最后一项不写

}Sex;

typedef struct //结构体

{

int year;

int month;

int day;

}Date;

typedef enum

{

ColorBlack,

ColorRed,

ColorGreen

}Color;

@interface Student : NSObject

{

@public

//  Sex sex;

Date birthday;

//  double weight;

//  包括小数点后

//  Color favColor;

Dog *_dog;

}

//  - (void) run;

//  - (void) eat;

//  - (void) print;

//  - (void) eatDog;

//  - (void) playDog;

- (void)setBirthday:(Date)birthday;

- (Date)birthday;

- (void)setDog:(Dog *)dog;

- (Dog *)dog;

@end

Student.m

#import "Student.h"

@implementation Student

//  - (void) run

//  {

//  weight -=1;

//  NSLog(@"学生成功减掉一斤肉");

//  }

//  - (void) eat

//  {

//  weight +=1;

//  NSLog(@"学生长了一斤肉");

//  }

//  - (void) print

//  {

//  NSLog(@"性别=%d,体重=%f,最喜欢的颜色=%d,生日是=%d-%d-%d",sex,weight,favColor,birthday);

//  }

//  - (void) eatDog

//  {

// dog->weight +=1; 面向过程,非面向对象

//  [dog eat];

//  }

//  - (void) playDog

//  {

//  [dog run];

//  }

- (void)setBirthday:(Date)birthday

{

NSLog(@"调用了它的set方法");

_birthday = birthday;

}

- (date)birthday

{

NSLog(@"调用了它的get方法");

return _birthday;

}

;@end

Dog.h

#import <Foundation/Foundation.h>

//狗(体重,毛的颜色,吃,跑)

typedef enum

{

ColorBlack,

ColorRed,

ColorGreen

}Color;

@interface Dog : NSObject

{

@public

double weight;

Color curColor;

}

- (void) run;

- (void) eat;

@end

Dog.m

#import "Dog.h"

@implementation Dog

- (void) run

{

weight -=1;

NSLog(@"狗成功减掉一斤肉");

}

- (void) eat

{

weight +=1;

NSLog(@"狗长了一斤肉");

}

@end

@class A:只调用类

#import "A.h":调用类和方法
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米平板6Max没有网络怎么办 ...wifi和4G网络我都试过都现实吗没有网络。刚买的是正品没有刷机_百度... 2023年淘宝双11招商规则 淘宝国庆狂欢季招商规则及玩法 淘宝年货买不停招商规则 淘宝超来电活动招商规则 ZIP转换成RAR怎么转换? 衢州醉根艺品有限公司怎么样? 徐谷青主要业绩 徐谷青人物介绍 小数都比整数小,这句话是对还是错 原题:小数肯定比整数小,对吗 火鸡面的酱怎么洗不掉 火鸡面的油沾到衣服上怎么洗不掉 为什么我的银行卡被银行冻结了呢? 我的银行卡为什么会被冻结? 黄陵题咏二首原文_翻译及赏析 敬请高手把下面的文言文翻译成白话文,谢谢 闳廓[hóng kuò]什么意思?近义词和反义词是什么?英文翻译是什么? 末伏最后一伏是什么意思 在末伏最后一伏的具体意思 末伏节是哪天是干什么的 汽车智能钥匙没电了怎么办?老司机告诉你办法,能轻松解决 请问发酵失败的面团怎样吃 imac升级rx560不开机 怎样把爱情公寓下到手机里 我想从手机上下载爱情公寓2,在手机上怎么下载观看,我的很多视频软件都不能下载 我是iphone5s,没用itunes,用的是同步助手,我下了两集爱情公寓但不知道怎么传到手机上,传上的好像格式 孕妇梦见亲人有什么预兆?是什么意思? 都说安卓机用一年就会卡到爆,你遇到过? 快手上门取件怎么填写单号 用eclipse写的 关于那个举报了的 免费版华夏 封魔漏洞的事情 小黑盒上促销的游戏是别人退款的? 会计从业资格考试都考哪些内容 没有键盘灯的笔记本电脑好不好 苹果电脑如何连接无线网络 左边木字右边告字是什么字? psp怎样连接无线网 食人鳗鱼是真的吗 梦见鸟抓鱼有什么预兆?是什么意思? 王者荣耀主页装扮怎么获得 梦见鱼变鸟,我还把鸟放了 王者荣耀赛季名片要多少星 oppo手机怎么在相片上打字 手机云端的照片怎么删除呢? 宜兴哪有海关锁卖???紧急 沙县蒸饺皮的做法和配方? 主板后面的插口都有什么用 被注销了,微信里的钱怎么找回来 注销了里面的零钱如何找回?