前备知识
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+"赢了");
}
}
运行结果则为
以上就是博主想分享的一些个人理解 希望对大家能有帮助
博主也是编程小白 这是第一篇博客 希望大佬们提出不足并指点 共同进步 谢谢浏览!