Java-类与对象 Student/Hero 讲解

前备知识

1.创建Java代码文件

2.创建程序入口(public static void main(String[] args){

3熟悉数据类型 和基础逻辑语句

 数据类型

o 整数型:int     浮点型:double    字符型:char     布尔型:boolean     字符串:String

基础逻辑语句

eg:System.out.println(打印到控制台)     类.xxx="" 

类与对象概念

1.类与对象是面向对象的知识点

2.类:public clss 类名

         几个对象中都具有的属性,特征,行为,功能 构成了类

         写代码定义一个雷:用代码描述一个类别

3对象:object 具体的事物

eg 类:人类       对象:你 我 他 她

类的定义 怎么样写一个自己定义的类

语法:public class 类名{ }

命名格式:首字母大写,后面每个单词的首字母大写,与所在的文件名一致 MyFirstProgram

public class Student{



}

创建对象 如何创建对象并使用对象名调用属性和方法

创建对象:类名 对象名 = new 类名()
除了自己定义的类 ,系统中自带的类也可以创建对象
举例: JFrame jf= new JFrame(); Student stu=new Student();
对象名的作用:
调用属性
调用方法 / 调用时根据方法的参数传入数据 / 变量

接下来通过Student和Hero两种代码来让大家更加清楚的了解吧

public class Student{

//定义属性(属性即为对象所附有的特征 数据 可以自己定义)
String name;//姓名
int age;//年龄
String classname;//班级
int stuID;//学号
double score;//学分

//程序入口
public static void main(String[] args){
//创建这个类的对象(变量)stu1 学生类型变量名 - 对象变量名
Student stu1 = new Student();

//通过对象变量名调用属性赋值-对象变量名.属性名=属性值
stu1.name="张三";
stu1.age=18;
stu1.classname="高三一班";
stu1.stuID=20230101;
stu1.score=4.0;

Student stu2 = new student();
stu2.name="李四";
stu2.age=18;
stu2.classname="高三一班";
stu2.stuID=20230102;
stu2.score=4.5;

System.out.println("姓名:"+stu1.name+"年龄:"+stu1.age+"班级:"+stu1.classname+"学号:"+stu1.stuID+"学分:"+stu1.score);
System.out.println("姓名:"+stu2.name+"年龄:"+stu2.age+"班级:"+stu2.classname+"学号:"+stu2.stuID+"学分:"+stu2.score);
}


}


运行结果则为

姓名:张三 班级:高三一班 学号:20230101 学分:4.0

姓名:李四 班级:高三一班 学号:20230102 学分:4.5

在“Student”代码中 我们初步了解了对于类 对象的创建 以及对象属性的调用 我们还可以在程序入口中自己设置方法并调用

方法:将一段代码写到类中,只需要调用方法名就可以执行方法中所有代码

格式:public void 方法名(){}

public class Hero{

String playername;
String heroname;
int hp;
int ad;
int lv;
int exp;

//方法 public void 方法名(){}
public void showinfo(){
System.out.println ("玩家名:" + playerName + " 英雄名:" + heroName + " 血量:"+ hp + " 攻击力:" + ad + " 等级:" + lv + " " +"经验值:" + exp);
}

public void uplv(){
lv++;
hp+=100;
ad+=20
exp+=20;
System.out.println("恭喜英雄"+heroname+"升级了,当前等级为"+lv);
}

//攻击方法 与showinfo和uplv不同 showinfo uplv都是只有一个主语 没有宾语 运行显示的是他们自身所拥有是属性
//参数可以在方法中使用 攻击方法中的参数是Hero类型的,方法被调用时,括号需要给一个Hero型的变量名 即不能与Hero重名即可

public void attack(Hero h){
System.out.println(playername+heroname+"正在攻击"+h.playername+h.heroname)
int a = 30+5*lv+ad*2;
h.hp-=a;//h.hp=h.hp-a
System.out.println("使其损失了"+a+"点HP,其还剩下"+h.hp+"点HP");
}

public static void main(String[] args){
Hero hero1 = new Hero();
hero1.playername="Aex";
hero1.heroname="(漩涡鸣人)";
hero1.ad=86;
hero1.hp=1650;
hero1.lv=1;
hero1.exp=100;

Hero hero2 = new Hero();
hero2.playername="Bob";
hero2.heroname="(宇智波佐助)";
hero2.ad=90;
hero2.hp=1600;
hero2.lv=1;
hero2.exp=100;

//输入你的运行方式
hero1.showinfo();
hero2.showinfo();
hero1.uplv();
hero1.attack(hero2);
hero2.attack(hero1);
//作为回合制游戏 添加算法使其打到底并分出胜负 for与while均可 for中需要三句代码 while中一句
while(hero1.hp>0&hero2.hp>0){
hero1.attack(hero2);
hero2.attack(hero1);
}

//判断胜负
if(hero1.hp>0){
System.out.println(hero1.playername+hero1name+"赢了");
}else{
System.out.println(hero2.playername+hero2name+"赢了");
}
}

运行结果则为

 以上就是博主想分享的一些个人理解 希望对大家能有帮助

博主也是编程小白 这是第一篇博客 希望大佬们提出不足并指点 共同进步 谢谢浏览!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值