`

类与对象

    博客分类:
  • JAVA
阅读更多

                                            类vs 对象

 

           在编程语言的学习中我们经常提到的通常会使类和对象,在初期学习c语言或者是c++的同学或许还没体会到这一点,因为就算是c++也只是部分面向对象化语言,但是在java语言上分析的话,java是完全面向对象化的语言,可不要小看这一个“完全”字眼,因为在我们初次与计算机交流时,最简单的hello word  就是用的public static void main(String 【】args【】)

谁说主函数就不是一个类了??

        那 生活中有那些是对象?
 对象:具体的某一个物体或者具体的某一个事物就是一个对象。
 举例:
  某一台电脑
   特征:颜色,大小,型号,价格,材质,重量,品牌,...
   行为(功能,用途):打字,计算,开机,连网,玩游戏,...
  某一件衣服

所有你能想象到的都可以化归为类,“人以类聚,物以群分”脑海中突然冒出这一句话,所以在java中类的定义必须准确。

类和对象的关系是:类是抽象的,对象是实在的。

类是对象对属性和方法的抽象定义

this 关键字的陷阱:

在java中调用当前类的对象只用this.属性或方法即可

但是:

在C语言以及C++中相当于是一个指针,调用当前类的对象需要*this.属性及方法,这个陷阱曾经困扰了我很长时间,所以同时学习两门这种语言的同僚们要注意。

接下来就是用类与对象实现拳皇这个经典游戏的具体过程:

游戏很简单,到那时缺憾也是不少,比如说至进行了4人对战,而标准的拳皇应该是六人,三人各属一方。

再者未实现防御功能,以及积累一定攻击力可以放大招的情况,这不得不说是一种遗憾,希望在接下来的深入学习中可以实现。

package lesson1302;
import java.util.*;

public class King {
	private String name;//定义名字属性
	private int power;//定义攻击力属性
	private int blood;//定义血量属性
	public King(String name,int power,int blood){//给构造函数赋值
		this.name=name;//表示将传入的name值给当前调用构造函数的对象的name属性值
		this.power=power;//表示将传入的power值给当前调用构造函数的对象的power属性值
		this.blood=blood;//表示将传入blood值给当前调用构造函数的对象的blood属性值
		}
	public void gongji(King a){//定义攻击方法
		Random random = new Random();
		     //被攻击方失去血量
			a.blood-=this.power;//被攻击方失去血量
			System.out.println(this.name+"攻击了"+a.name+"  攻击力为"+this.power);//
			System.out.println(this.name+"剩余血量:"+this.blood+"  "+a.name+"剩余血量为"+a.blood);
			
		
			if(a.blood<0){//判断胜负
				System.out.println("THE KO-King IS+"+this.name);
				
			}
			else{
				if(this.blood<0)//判断胜负
			
				System.out.println("THE KO-King IS"+a.name);//输出赢者
				}
			
			
}
			

          
        
		
	
	public static void main(String[] args){//主函数入口
		King king1;//定义第一个对象
		king1=new King("暴走列昂娜",500,1000);//设置暴走列安娜的的攻击力以及血量
		King king2;
		king2=new King("不知火舞",300,1200);//设置暴走不知火舞的攻击力以及血量
		King king3;
		king3=new King("草雉京",800,1300);//设置暴走草雉京的的攻击力以及血量
		King king4;
		king4=new King("二阶堂红丸",700,1000);//设置暴走二阶堂红丸的的攻击力以及血量
		while(king1.blood>0&&king3.blood>0){//判断输赢
			king1.gongji(king3);//实行循环攻击
			king3.gongji(king1);
		}
		if(king1.blood>0){//假定king1赢了
			while(king1.blood>0&&king4.blood>0){//那么king1暴走列安娜要和第二阵营的
				//那么king1暴走列安娜要和第二阵营的king4二阶堂红丸决斗
				king1.gongji(king4);
				king4.gongji(king1);
			}
			if(king1.blood>0){
				System.out.println("第一阵营胜利!!!");//如果暴走列安娜赢了,那么第一阵营就胜出
			}
			if(king4.blood>0){
				System.out.println("平局!!!");//如果king4赢了,那就是平局
			}
			
		}
		else{             //假定king3赢了
			while(king3.blood>0&&king2.blood>0){//那么king3就要和king2决斗
				king3.gongji(king2);//互相攻击
				king2.gongji(king3);//互相攻击
			}
			if(king3.blood>0){
				System.out.println("第二阵营胜利!!!");//如果king3胜利了,那么第二阵营就胜出
			}
			if(king2.blood>0){
				System.out.println("平局!!!");//如果king2赢了,那么就是平局
			}
		}
		
		
		
		
			
		}
		
		 
	
        
                   
         }
	
	
	
		
	

           

 

0
0
分享到:
评论

相关推荐

    JAVA类与对象及数组习题

    JAVA类与对象及数组习题 JAVA类和对象及数组是JAVA编程语言的基础概念。下面是关于JAVA类和对象及数组的习题,涵盖了构造方法、继承、多重继承、变量声明、数组初始化等方面的知识点。 1. 构造方法的调用方式: ...

    java面向对象、类与对象的定义笔记

    类是创建对象的根源,它定义了同一类对象共有的属性和方法。类中的属性(Attribute)可以理解为对象所拥有的变量,而方法(Method)则是对象可以执行的操作或行为。 对象(Object)是类的实例(Instance),是具有...

    【第5章:面向对象基础】_面向对象、类与对象的定义

    本章的"【第5章:面向对象基础】_面向对象、类与对象的定义"将详细讲解面向对象编程的核心概念,包括如何定义类、创建对象,以及如何利用继承和多态性设计高效的程序。通过学习,你将能更好地理解和应用Java的面向...

    day06【类与对象、封装、构造方法】.pdf

    面向对象程序设计是一种主流的编程范式,它以类与对象为基础,强调以对象为程序设计的核心。Java语言是面向对象的,其三大基本特征分别是封装、继承和多态。封装是将数据(属性)和代码(行为)绑定到一起,形成一个...

    c++ 类与对象

    c++类与对象实习举例。

    类与对象练习.pdf

    面向对象编程(OOP)是一种编程思想,它将复杂的信息对象化,将现实的关系抽象化装化成类,通过封装、继承、多态等方式进行处理。在OOP中,类和对象是两个基本概念。 类(Class)是一种引用数据类型,是对一类事物...

    C++习题\4类与对象.doc

    c++ 习题 4类与对象.doc (选择 解答 填空)

    java类与对象实例

    "java类与对象实例" 在 Java 中,类和对象是两个紧密相连的概念。类是一种蓝图,用于创建对象,而对象是类的一个实例。类描述了对象的基本结构,包括属性、方法和事件等。类设计的关键概念包括封装、继承和多态。 ...

    类与对象的分析与设计

    在编程世界里,类与对象是面向对象编程(OOP)的核心概念,它们为我们提供了抽象、封装、继承和多态等重要特性。本教程“类与对象的分析与设计”将深入探讨如何从实际问题中抽离出这些概念,以便进行高效、结构化的...

    c++ 类与对象课件,包括对象的初始化,对象的使用,构造函数和析构函数等等

    常对象(Const Object)是指声明为const的类对象,它的成员函数不能修改数据成员。常成员函数(Const Member Function)是在类定义中声明为const的函数,它承诺不修改对象的状态。 最后,对象在内存中的分布情况...

    java类与对象教学(1)

    在Java编程语言中,"类与对象教学(1)"是一个重要的学习主题,它涵盖了面向对象编程的基本概念,对比了面向对象编程(OOP)与面向过程编程(POP),并深入探讨了类、对象以及如何在实际开发中创建和使用它们。...

    类与对象的关系

    讲述类的声明和类体及其构成,构造方法和对象的创建

    Java类与对象3

    ### Java类与对象详解 #### 一、面向对象编程的核心理念 面向对象编程(OOP)是一种编程范式,其核心在于将现实世界中的事物抽象为计算机中的对象,通过对象来模拟和处理复杂的问题。这一理念源于试图让编程更加...

    二_类与对象_

    在编程世界中,类与对象是面向对象编程(OOP)的核心概念。面向对象编程是一种设计和实现软件的方法,它基于“对象”的概念,而这些对象则是类的实例。类可以看作是创建对象的蓝图,它定义了对象的数据属性和行为。...

    第3讲 面向对象—类与对象

    本章重点讲解了类与对象的概念及其在Java中的应用。 首先,面向对象的基本思想是基于现实世界的抽象,通过对象、类、继承、封装、多态等概念来构建程序。这种编程方式更符合人类的思维模式,使得代码更易于理解和...

    《Java程序设计》第8章 类与对象教案.pdf

    【Java程序设计】类与对象是Java编程的核心概念,它们是面向对象编程的基础。类是对具有相似属性和行为的事物的抽象,而对象是类的实例,代表着具体存在的个体。 在【描述】中,该教案是为了2021年的高校教师资格证...

    类与对象练习题 带答案

    C++ 类与对象练习题带答案 本资源是一个 C++ 编程语言的练习题集,涵盖了类与对象的基础知识。练习题分为选择题和填空题两部分,涵盖了类的定义、对象的声明、成员函数、访问权限、继承等关键概念。 选择题 1. ...

    类与对象构建Java程序的基石优秀文档.ppt

    "类与对象构建Java程序的基石优秀文档" 本文档主要讲述了Java程序设计的基础知识,涉及到类与对象的概念、关系、访问控制修饰符、面向对象编程的基本概念、抽象、封装、继承、多态等重要特征。 在第四章中,作者...

Global site tag (gtag.js) - Google Analytics