方法重载的定义及要素:
在同一类中,两个或多个方法名相同,但参数的个数、顺序、类型不同,即为方法重载。
要素:1.同一类;
2.两个或多个方法名相同;
3.参数的个数、顺序和类型不同。
构造函数的定义和特点:
每一类都会有一个默认的构造方法,而且默认构造方法不写出来,是无参数的。
特点:1.不写返回值,但有返回值,返回地址参数;
2.方法名必须和类名相同;
3.调用的时间为创建对象的时间,创建对象完即无法调用。
默认构造函数的格式:public 类名(){}
构造函数的重载:
格式:public 类名(类型 参数名,类型 参数名,){}
注意:如果重载了构造方法,默认的无参构造函数就不存在了,如果还想用,则显性的定义出来
作用:1.初始化一些基本属性;
2.传值。
public void fight(Soldier sol,int a ){
//让sol对象减少血量
sol.setBlood(sol.getBlood()-a);
//输出信息
System.out.println(name+"攻击了"+sol.getName()+","+sol.getName()+"剩余"+sol.getBlood()+"血量");
}
//实例化Solider类的对象
Soldier sol = new Soldier("无敌",10);
//实例化一个Boss类的对象
Boss boss = new Boss("sb",10);
//循环战斗,条件战士和Boss的血量都必须要大于0
while(sol.getBlood() > 0 && boss.getBlood() > 0){
//让战士对象先攻击Boss对象
sol.fight(boss,3);
//判断boss的血量是否小于或者等于0
if(boss.getBlood() <= 0){
//输出信息
System.out.println(sol.getName()+"胜利啦!");
//跳出循环
break;
}
//让Boss对象攻击战士对象
boss.fight(sol,4);
//判断sol的血量是否小于或者等于0
if(sol.getBlood() <= 0){
//输出信息
System.out.println(boss.getName()+"胜利啦!");
//跳出循环
break;
}
}
分享到:
相关推荐
问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,怎么找vtable呢?所以构造函数不能是虚函数。 2. 从使用角度,虚函数主要用于在信息不全的情况下,能使...
每个类都具有构造函数和析构函数。其中,构造函数在定义对象时被调用,析构函数在对象释放时被调用。如果用户没有提供构造函数和析构函数,系统将提供默认的构造函数和析构函数。 1.构造函数 构造函数是一个与类同名...
构建一个类Point,它提供两个公有的构造函数,一个没有参数的Point构造函数和一个有两个double参数的构造函数。另外在该类中提供一个静态方法计算两个点的直线距离,传入参数为两个Point类实例。然后设计一个测试类...
详细介绍了构造函数、复制构造函数、拷贝构造函数之间的区别
构造函数与默认构造函数的声明、定义、应用、比较
本程序包含构造函数和析构函数,可以把构造函数和析构函数的作用区分开
在类内包含其他对象时,将这个类对象叫做内含类对象,该对象的初始化工作必须放在构造函数的初始化列表中,内含类对象和包含它的类对象的构造函数顺序是:先是内含类的构造函数,然后是外部类的构造函数。...
3、请设计一个拷贝构造函数,实现将参数的值全部传递给当前对象,同时输出“拷贝构造函数被调用” 4、请设计一个析构函数,同时输出“析构函数被调用” 5、设计一个成员函数 int dayDiff(CTime t) ,用于计算...
c#析构构造函数c#析构构造函数c#析构构造函数c#析构构造函数
map使用std::map, CArray,int> > 错误, 解决: 重写CArray, 重载构造函数并加const 添加操作 operator =
C++中的构造函数、析构函数剖析 在C+ + 中, 构造函数是一个在构件对象的时 候调用的特殊的函数, 其目的是对对象进行初始 化工作, 从而使对象被使用之前可以处于一种合 理的状态。析构函数是在撤消对象时, 收回对象 ...
C++ Primer中在讲构造函数初始化列表的时候有这么一段话:无论是在构造函数初始化列表中初始化成员,还是在构造函数体中对它们赋值,最终结果是相同的。不同之处在于,使用构造函数初始化列表的版本初始化数据成员,...
C++\测试 对象成员构造函数、基类构造函数、派生类本身的构造函数 的先后顺序.rar
类的继承以及构造函数,包括私有继承、公有继承的区别,详细的构造函数的使用
C++简单类的实现,包括构造函数,析构函数以及拷贝构造函数
C++ 拷贝构造函数 赋值构造函数 解释
说明了派生类与基类之间的构造函数的调用顺序……
包含默认构造函数 初始化构造函数 复制构造函数 转换构造函数
《Visual C++2012入门经典(第6版)》实例,在派生类的构造函数中调用基类的构造函数
C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数C++ 默认构造函数