类和对象的总结
一、 对象
1.概念:具体的某一个物体或者某一个事物。
2.举例:眼睛所看到的任何一个物体,exp:我眼前的一个水杯。
3.描述对象:特征、行为(或称用途、功能)
二、类
1.概念:一类具有相似特征和行为的对象的集合。
2.类(模板)的组成部分有:a.属性(对应对象的特征);
b.方法(对应对象的行为)。
3.类的基本格式:
public class 类名{
//属性的格式
private 数据类型 属性名;
//方法的格式
public 返回值数据类型 方法名(数据类型 参数名,…){
//编写代码
}
}
4.实例化对象的格式:
类名 对象名=new 类名();
exp: Student stu = new Student();
5.调用方法的格式:
对象名.方法名(参数值,…);
exp: stu. setName(“becky”);
stu.study();
N.B: a.类名的首字母要大写,类名中的任一个单词的首字母都要大写。
b.定义的类可以作为数据类型(引用类型、类类型、对象类型)。
c.用来创建的对象可以作为参数。
三、练习:回合制游戏:奥特曼和小怪兽要战斗,直到一方的血量为0的时候结束战斗,输出谁胜利了!
1.思路:首先找出对象及它们的特征和行为,如下。然后分别根据对象的特征和行为分别给这两个对象定义一个类。最后定义一个主函数,分别实例化这两个对象和它们的调用方法,模拟它们的实战场景,最后输出结果。
2.分析:
对象 特征 行为
奥特曼 血量、姓名 战斗
小怪兽 血量、姓名 战斗
3.具体代码如下:
1) //定义一个超人类
public class Superman{
//定义一个姓名属性
private String name;
//定义一个血量属性
private int blood;
//设置姓名属性值的方法
public void setName(String n){
name=n;//将参数的值赋给属性name
}
//获取姓名属性值的方法
public String getName(){
return name;//返回name属性的值
}
//设置血量属性值的方法
public void setBlood(int m){
blood=m;//将参数的值赋给属性blood
}
//获取血量属性值的方法
public int getBlood(){
return blood;//返回blood的属性值
}
//定义一个战斗方法
public void fighting(Monster mon){
blood--;//血量减1
System.out.println(name+"被"+mon.getName()+"攻击了,仅剩"+blood+"滴血。");
}
}
2)//定义一个怪物类
public class Monster{
//定义一个姓名属性
private String name;
//定义一个血量属性
private int blood;
//设置姓名属性值的方法
public void setName(String n){
name=n;//将参数的值赋给属性name
}
//设置获取姓名属性值的方法
public String getName(){
return name;//返回name属性的值
}
//设置血量属性值的方法
public void setBlood(int m){
blood=m;//将参数的值赋给属性blood
}
//设置获取血量属性值的方法
public int getBlood(){
return blood;//返回blood属性的值
}
//定义一个战斗方法
public void fighting(Superman sup){
blood--;//血量减1
System.out.println(name+"被"+sup.getName()+"攻击了,仅剩"+blood+"滴血。");
}
}
3)//定义一个Fighting类
public class Fighting{
//定义程序的入口主函数
public static void main(String [] args){
//实例化一个Superman类的对象
Superman su=new Superman();
//调用设置姓名的方法
su.setName("超人");
//调用设置血量值的方法
su.setBlood(10);
//实例化一个Monster类的对象
Monster mo=new Monster();
//调用设置姓名的方法
mo.setName("怪物");
//调用设置血量的方法
mo.setBlood(10);
//设定回合次数
int i=10;
//开始进行10回合的较量,每回合双方各有一次攻击机会
while(i>0){
//调用战斗方法
mo.fighting(su);
//调用战斗方法
su.fighting(mo);
i--;
//将怪物目前的血量赋值给mblood
int mblood=mo.getBlood();
//将超人目前的血量赋值给sblood
int sblood=su.getBlood();
//当怪物血量为0时输出结果
if(mblood==0){
System.out.println("怪物血量先为0,超人战胜!");
break;
}
else if(sblood==0){
//当超人血量为0时输出结果
System.out.println("超人血量先为0,怪物战胜!");
break;
}
}
}
}
4.编写代码时需要注意的一些问题:
a.为对象定义类时,一般定义对象的属性需用“private”。
b.为方便起见,可将对象当前的血量值赋给一个整型变量。
exp: int sblood=su.getBlood();
c. 上述的赋值语句应放在while循环内部,若放在循环外部,整型变量所带有的血量值将不作变化。exp: 上面设定的超人的血量值为10,若赋值语句放在循环外部,sblood的值始终为10。
分享到:
相关推荐
### Java中的类和对象总结 #### 一、类与对象的概念 在面向对象编程中,类(Class)和对象(Object)是两个核心概念。类是对象的抽象模板,它定义了对象的数据结构(即属性)和行为(即方法)。而对象则是类的具体...
总结,类和对象是构建复杂软件系统的基石。熟练掌握它们的概念、使用方式以及相关特性,对于理解和编写高质量的面向对象程序至关重要。通过不断的实践和学习,我们可以逐步提升在OOP领域的专业技能。
在编程领域,面向对象编程(Object-Oriented Programming, OOP)是一种常见的编程范式,其中类和对象是核心概念。本篇文章将深入探讨类与对象以及构造方法的相关知识点。 首先,类是对象的蓝图,它定义了一组特性和...
- **类定义**: C++中用来描述一类对象的共同特征和行为的概念。它是一个抽象数据类型,包含了数据成员和成员函数。 - **成员函数**: 定义在类中的函数,用于实现类的行为。 - **数据成员**: 定义在类中的变量,用于...
总结,类对象和类指针在不同场景下各有优势。类对象更适合于轻量级对象和效率要求高的场合,而类指针则适用于需要动态绑定和管理大量对象的情况。理解并熟练运用这两种方式,能够帮助我们更好地设计和实现面向对象的...
总结一下,C++的类和对象是实现面向对象编程的基础。类定义了对象的结构和行为,而对象是类的实例,拥有类定义的属性和方法。理解并熟练掌握类和对象的使用,对于任何C++程序员来说都是至关重要的。通过阅读《C++类...
本次实验的目的是深入理解和掌握Java编程语言中的类与对象的概念,通过设计和实现一系列几何图形类,包括点、直线、三角形、矩形、正方形、圆形和椭圆,来实践面向对象的设计方法。实验要求学生不仅能够创建数据域和...
类和对象的基本概念和用法 类和对象是面向对象编程(Object-Oriented Programming,OOP)的基础概念。...总结:在类作用域里面,不管什么属性的成员都能访问,在类外面,只能访问公有成员,不能访问私有和保护成员。
本文将深入探讨C#2005中面向对象编程的基石——类和对象,通过解析给定文件的信息,提炼并扩展相关知识点。 ### 类的概念 类在面向对象编程中扮演着中心角色,它不仅封装了数据,还封装了对这些数据进行操作的方法...
在这篇文章中,我们将总结了使用类的对象还是指针的主要区别和使用场景,希望能够帮助有疑问的朋友更好地理解和应用。 首先,我们需要了解类的对象和指针的存储空间上的区别。使用new关键字创建的对象存储在堆上,...
在C#中,创建类意味着定义了一组属性和方法,这些属性和方法描述了该类的对象将会拥有什么数据和可以执行什么行为。在面向对象的程序设计中,类是对现实世界中具有相似性质的对象的抽象和封装。 在上机实验中,学生...
第二个例子展示了类的组合,即一个类`Father`中包含了两个`Son`对象`s1`和`s2`。`Father`类的构造函数接受三个整型参数,分别用于初始化`Father`的`age`以及`Son`对象`s1`和`s2`的`age`。在`main()`中,创建了一个`...
总结来说,类和对象是面向对象编程的核心,它们定义了软件组件的结构和行为。通过合理地设计和实现类与对象,我们可以构建出复杂、模块化的软件系统。在开发过程中,借助源码管理和开发工具,我们可以更高效地实现和...
在Java编程语言中,类是面向对象编程的基础,它用于封装数据和操作这些数据的方法。在给定的实验中,有两个主要的类被创建:`complex1` 和 `Complex`,它们都用来表示复数,并提供了复数的加法和减法运算。 1. **...
### Java面向对象总结 #### 一、继承 继承是面向对象编程中的一个重要概念,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现了代码的复用。 1. **子类继承父类就拥有了父类的属性和方法**:当一...