/*
3.设计3个类,类之间的关系自拟(比如继承、组合)
1> 人
(1)属性
* 姓名
* 年龄
(2)方法
* 属性相应的set和get方法
* 设计一个对象方法同时设置姓名和年龄
2> 书
(1)属性
* 书名
* 出版社名称
* 作者(包含姓名和年龄)
(2)方法
* 属性相应的set和get方法
3> 学生
* 姓名
* 年龄
* 学号
* 书(随身带着一本书)
2> 方法
* 属性相应的set和get方法
* 设计一个对象方法-study:输出书名
*/
#import <Foundation/Foundation.h>
@interface Person : NSObject{
char *_name;
int _age;
}
-(void)setName:(char *)name;
-(char *)getName;
@end
@implementation Person
-(void)setName:(char *)name{
_name=name;
}
-(char *)getName{
return _name;
}
@end
@interface Book : NSObject{
char *_bookName;
char *_press;
char *_author;
int _authorAge;
}
-(void)setBookName:(char *)bookName;
@end
@implementation Book
-(void)setBookName:(char *)bookName{
_bookName=bookName;
}
-(char *)getBookName{
return _bookName;
}
-(char *)getAuthor{
return _author;
}
-(char *)getPress{
return _press;
}
-(int)getAuthorAge{
return _authorAge;
}
@end
@interface Student :Person{
int _num;
Book *_b;
}
-(void)setNum:(int)num;
-(int)getNum;
-(void)setB:(Book *)b;
-(Book *)getB;
-(void)study;
@end
@implementation Student
-(void)setNum:(int)num{
_num=num;
}
-(int)getNum{
return _num;
}
-(void)setB:(Book *)b{
_b=b;
}
-(Book *)getB{
return _b;
}
-(void)study{
NSLog(@"书名为:%s",[s getBookName]);//就是这里总出报错
}
@end
int main(){
Book *b=[Book new];
Student *s=[Student new];
[s setB:b];
[b setBookName:"jesus"];
[s study];
}
|
|