-(id) initWithName :(NSString * ) name sex : (NSString *) sex hobby : (NSString *) hobby age : (int ) age
{
_name = name ;
_sex = sex ;
_hobby = hobby;
_age = age;
return self ;
}
Person * per1 =[ [Person alloc] initWithName: @"啦啦 " sex:@"男 "hobby:@"楠楠 "age:58 ];
#import 导入头文件 , 导入自定义类 形似include 但是可以避免头文件被重复导入。
注意交叉导入 。避免交叉导入 @class 把之后的内容作为一个类来使用。
eg : @class MobilePhone; ( 主要用于声明文件,只导入类型,要使用方法则在实现文件里面导入头文件)
作业:
定义分数(Fraction)类: 1、实例变量:分子、分母(@protected) 2、方法:(1)自定义初始化方法(初始分子和分母)(2)分子 的赋值、取值方法(3)分母的赋值取值方法(4)打印分数信息 (5)约分(6)加、减、乘、除运算方法。 3、mian.m文件中创建分数对象,测试加、减、乘、除。 提示:加法运算有一个Fraction类型的参数(参与加法运算的另外 一个分数对象),有一个Fraction类型的返回值(结果)。
打僵尸 ,需求:
定义普通僵尸类:
实例变量:僵尸种类、僵尸总血量、僵尸每次失血量。
方法:初始化方法(设置僵尸种类,总血量)、被打击失血、死亡。
定义路障僵尸类:
实例变量:僵尸种类、僵尸总血量、僵尸每次失血量,道具。
方法:初始化方法(设置僵尸种类,总血量)、被打击失血、失去装备、死亡。
定义铁桶僵尸类:
实例变量:僵尸种类、僵尸总血量、僵尸每次失血量,道具,弱点。
方法:初始化方法(设置僵尸种类,总血量)、被打击失血、失去装备、死亡。
1、创建普通僵尸对象,设置总血量50,每次失血量为 3
2、创建路障僵尸对象,设置总血量80,有路障时,每次失血量为 2 3、创建铁桶僵尸对象,设置总血量120,有铁桶时,每次失血量为 1
4、选作:
For循环 模拟攻击:
(1)、普通僵尸被打击时:每次失血3. (2)、路障僵尸被打击时:有路障时,每次失血2,血量剩余一半时,失去路障,每次失血3. (3)、铁桶僵尸被打击时:有铁桶时,每次失血1,血量剩余1/3时,失去铁桶,每次失血3. 循环攻击过程中:每个僵尸被攻击时,输出本次丢失血量,剩余血量。丢失道具时,输出丢失的道具。僵尸死亡时,输出已死亡。 最后一个僵尸死亡时,攻击停止,循环结束。输出总攻击次数。
矩形计算
1、定义一个新的类XYPoint,实例变量:x,y。方法:初始化、赋值、取值方 法
3、定义一个新的类Rectangle,实例变量:width,height,XYPoint类型的实 例变量point,XYPoint类型的实例变量center。方法:4个实例变量的赋值、取 值、计算周长、计算面积
编写一个房屋类,由门、窗户等组成。门和窗户有自己的开关 方法,然后将门和窗户这些复合在一起成为房屋类,调用房屋 类的进出方法实际调用到门的开关;调用房屋的换气方法,实 际调用到窗户的开关;提供方法,实现更换门窗。
- (int) maxGY1:(fenshu*)_fenshu
{
// 辗转相减法
while (_fenshu->fenzi != _fenshu->fenmu) {
int cha = abs(_fenshu->fenzi - _fenshu->fenmu);
_fenshu->fenzi = _fenshu->fenmu;
_fenshu->fenmu = cha;
_fenshu->gongyue = _fenshu->fenzi;
}
return _fenshu->gongyue;
}