1
定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C)1) 不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存)
2) 增加一个便利构造器(快速构造器)
3) 使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX Age Is XXX Score Is XXX
4) 对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序))2
定义2个新类,分别命名为Song/Playlist。Song对象包含歌曲的信息,歌名、艺术家、专辑、歌曲长度;Playlist对象表示一个播放列表,包含播放列表名称和一个歌曲的集合,还应该提供添加和删除歌曲的方法。(Objective-C)小弟初学者,这两个题目实在是写不出来了,求大神帮忙,先谢谢了
定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C)1) 不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存)
2) 增加一个便利构造器(快速构造器)
3) 使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX Age Is XXX Score Is XXX
4) 对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序))2
定义2个新类,分别命名为Song/Playlist。Song对象包含歌曲的信息,歌名、艺术家、专辑、歌曲长度;Playlist对象表示一个播放列表,包含播放列表名称和一个歌曲的集合,还应该提供添加和删除歌曲的方法。(Objective-C)小弟初学者,这两个题目实在是写不出来了,求大神帮忙,先谢谢了
1. (1)手动创建属性的getter,setter 方法,关键是对于引用类型的内存管理。如:姓名,需要把它定义成NSString 类型
@property (nonatomic,retain) NSString *name;
手动创建的setter方法
-(void)setName:(NSString *)name {
[_name release];
_name = name;
[_name retain];
}1. (2)便利构造器,应该考察的是在实例化的对象的同时初始化成员
-(id)initWithName:(NSString *)name age:(NSInteger)age score:(float)score {
if (self = [super init]) {
self.name = name;
self.age = age;
self.score = score;
}
return self;
}1. (3)自定义输出对象的信息,你可以重写NSObject的description
-(NSString *)description {
return [NSString stringWithFormat:@"My Name Is %@ Age Is %d Score Is %f",self.name,self.age,self.score ] ;
}1. (4)考察的是对集合中元素的排序,集合对象NSArray的排序,可以利用NSSortDescriptor 来添加排序设置。2. 这里主要考察的是对可变数组(NSMutableArray)的增,删