7月6日:类和对象
1、类与对象的概念:
类:生活中的一类事物。例如:飞机,汽车,电脑等等。
对象:类中特定的某一个。例如:桌子上的那支笔,我的这本书,你这个人等等。
总的来说:
类是泛指在某些方面具有某些相似的属性的所有事物。比如:人(类),交通工具(类)。
对象是特指“类”中的某一个,比如:人(类)中的某一个(你、我、他),电脑(类)中的某一个(我正在使用的这台电脑)
2、类
生活中的类一定是具有某些共同的特征的事物的集合。而这些特征在程序中被定义为属性和方法。
属性和方法就是类在程序中的组成。
3、类的基本格式
public class 类名{ //定义属性的格式 private 数据类型 属性名; }
类中可定义的访问修饰符有4种:public(公有的),private(私有的),默认的(int...),protected(受保护的)
例如:private String name;
//在类中的属性尽量定义为私有的。
注:因为所有的属性都是私有的。故需要定义一个设置属性值的方法(如下)(从而才可以在类的外面进行赋值属性,调用属性。。)
//方法的格式 public 返回值数据类型 方法名(数据类型 形参名,...){ } public String setName(String n){ name=n; } //赋值属性的方法 public String getName(){ return name; } //获取属性的方法 }
注:一个“.java”文件中只写一个类,一个方法中只做一件事
4、实例化对象和调用方法的格式
实例化对象的关键字是:new
格式:
类名 对象名=new 类名();
调用方法的格式:
对象名.方法名(实参或者参数名);
注:
java中只有两种数据类型,
1、基本数据类型(int char等)
2、引用数据类型(多为类名)
5、对象也可作为参数。定义的类也可作为数据类型。多在传参时使用。
例如:
public void teach(student s){ //方法体 }
代码示例:战斗小游戏。
public class Fight{ //创建一个Fight类 //定义属性(特征) private String name; private int hp; //定义方法(行为) //定义一个设置姓名的方法 public void setName(String n){ name=n;//赋值 //n为形参名 } //定义一个获取姓名的方法 public String getName(){ return name; } //定义一个设置血量的方法 public void setHp(int h){ hp=h; } //定义一个获取血量的方法 public int getHp(){ return hp; } //定义一个战斗方法 public void fight(Boss b){ System.out.println(b.getName()+"对"+getName()+"造成了10点伤害"); hp-=10; //b.setHp(b.getHp()-10); //调用对方血量的方法 } }
public class Boss{ //创建一个Boss类。 //定义属性(特征) private String name; private int hp; //定义方法(行为) //定义一个设置姓名的方法 public void setName(String n){ name=n;//赋值 //n为形参名 } //定义一个获取姓名的方法 public String getName(){ return name; } //定义一个设置血量的方法 public void setHp(int h){ hp=h; } //定义一个获取血量的方法 public int getHp(){ return hp; } //定义一个战斗方法 public void fight(Fight f){ System.out.println(f.getName()+"对"+getName()+"造成了7点伤害"); hp-=7; //f.setHp(s.getHp()-7); //调用对方血量的方法 } }
注:因为类中定义的都是(私有)属性,故需要定义“赋予姓名”“获取姓名”的(公有)方法。
public class Fighting{ //创建管理文件 public static void main(String[] args){ //实例化一个战士的对象 Fight fig=new Fight(); //设置对象的姓名和血量 fig.setName("凌统"); fig.setHp(100); //实例化一个Boss的对象 Boss bos=new Boss(); //设置对象的姓名和血量 bos.setName("甘宁"); bos.setHp(100); //调用战斗的方法 while(fig.getHp()>=0&&bos.getHp()>=0){ fig.fight(bos); bos.fight(fig); } if(fig.getHp()<=0){ System.out.println(fig.getName()+"被打败,"+bos.getName()+"胜利"); }else{ System.out.println(bos.getName()+"被打败"+fig.getName()+"胜利"); } } }
注:可以在此基础程序上进行进一步的扩展。
1、可以使用随机数函数,使损失的血量随机不确定,使结果不唯一。
2、增加对战的人数,使战斗多样性。(运用类的继承)
相关推荐
本文实例讲述了Python面向对象之类和对象。分享给大家供大家参考,具体如下: 类和对象(1) 对象是什么? 对象=属性(静态)+方法(动态); 属性一般是一个个变量;方法是一个个函数; #类的属性 就是 类变量 #...
在设计类和对象时,我们需要遵循一系列步骤以确保模型的有效性和可扩展性。 7.1 建立类和对象的模型是面向对象设计的起点。这个阶段包括了解系统的需求,通过获取领域知识,定义系统功能,以及确定合适的类。例如,...
【JAVA 教学 PPt(接口,类和对象尤其详尽)】 在Java编程语言中,接口、类和对象是核心概念,对于理解和构建复杂的软件系统至关重要。让我们深入探讨这些主题。 1. 接口(Interface): Java中的接口是一种完全...
在编程世界中,Java是一种广泛使用的面向对象的编程语言,其核心概念之一就是"类"和"对象"。本教学资料包"类和对象object.zip"聚焦于Java中的这一关键主题,旨在帮助S1课程的学生深入理解程序逻辑,通过实例教学、...
对象是类的实例,类则定义了对象的属性(数据)和行为(方法)。在C++中,类是构建面向对象程序的基本构造块。 1. **面向对象程序设计的基本概念**: - **对象**:对象是现实世界中实体的抽象,具有特定的属性和...
Java面向对象设计类和对象 Java面向对象设计类和对象是面向对象程序设计的基础,它将现实世界模型自然延伸到程序设计中。类和对象是面向对象设计的核心概念,类描述对象的属性和行为,对象是类的实例,是一个实实在...
类和对象的定义类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。对象是具有类类型的变量
在深入探讨C++编程语言的面向对象编程特点时,我们需要理解类和对象的相关概念。C++是一种支持面向对象的编程语言,而面向对象编程(OOP)的中心思想是将数据以及与数据相关的操作封装在一起,形成对象,以解决特定...
C++是一种强大的面向对象编程(OOP)语言,它的核心特性之一就是类和对象。类是C++中定义数据类型的方式,它封装了数据和操作这些数据的方法,而对象则是类的实例,代表着程序中的实体或者概念。在这个“C++类和对象...
通过书籍,个人整理的java基础之类的对象的定义的有关知识点
JAVA类和对象及数组是JAVA编程语言的基础概念。下面是关于JAVA类和对象及数组的习题,涵盖了构造方法、继承、多重继承、变量声明、数组初始化等方面的知识点。 1. 构造方法的调用方式: 构造方法是类的特殊方法,...
java类和对象练习题.docx
对JAVA学习中的类和对象进行详细介绍,很好的编程学习资料
C++类和对象上机练习,相当好的东西,值得参考!希望对你有用!
在编程世界中,类和对象是面向对象编程(OOP)的核心概念,它们构成了许多现代编程语言的基础。这里,我们将会深入探讨“类”和“对象”的概念,并结合标签“源码”和“工具”,来阐述如何在实际的软件开发过程中...
这个是c++类和对象的课件,与大家分享下
在编程领域,类和对象是面向对象编程(Object-Oriented Programming, OOP)的核心概念。面向对象编程是一种软件开发方法,它强调将程序结构组织为一系列相互协作的对象,而不是单一的过程或函数。这种思想源自于对...
综上所述,谭浩强的《C++类和对象》主要讲解了面向对象程序设计的基本概念,包括对象、类、封装性、信息隐蔽、抽象、继承和多态性。通过理解和掌握这些概念,开发者能够更有效地设计和构建大型、复杂的软件系统。在...
Java是一种面向对象的编程语言,它的核心概念之一就是“类”和“对象”。理解这两个概念是学习Java的基础,也是编写复杂程序的关键。 首先,我们来解释什么是“类”。在Java中,类可以看作是创建对象的蓝图或者模板...
Java编程中的类和对象是面向对象编程的核心概念。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它基于“对象”的概念,强调数据和操作数据的方法结合在一起,提供更好的代码组织和可维护性。 ...