package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
public class Commodity {
public static void main(String[] args) {
int a=10;
System.out.println(a);
// Commodity cola=null;// =new Commodity();
// cola.cname=“可乐”;
// cola.cprice=2.5;
// Commodity mouse=new Commodity();
// mouse.cname=“鼠标”;
// mouse.cprice=50;
// cola.printnp();
// mouse.printnp();
}
public String cname;
public double cprice;
public void printnp() {
System.out.println(cname+":"+cprice);
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
import java.util.Random;
//英雄类
public class Hero {
//属性
//名字
public String name;
//血量
public int hp;
//攻击力
public int atk;
//经验值
public int exp;
//暴击概率
public int bjgl; //60
//方法
// 自我介绍
public void say() {
System.out.println("我是英雄:"+name);
}
//攻击
public void atk(Tower t) {
//暴击值 攻击力的二倍
int sjnum=new Random().nextInt(100)+1;
// System.out.println();
if(sjnum<=bjgl) {
System.err.println(“发生了暴击”);
t.beida(atk*2);
}else {
t.beida(atk);
}
// System.out.println(name+“攻击,攻击力为”+atk);
}
//被打
public void beida(int blood) {
hp=hp-blood;
if(hp<=0) {
System.out.println(name+"英雄 被打死了");
System.out.println("game over you loose!");
System.exit(0);
}else {
System.out.println(name+"被塔攻击"+blood+"血,剩余血量为"+hp);
}
// System.out.println(name+“被打了,剩余血量为”+hp);
}
public void move() {
System.out.println(name+“在移动”);
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
public class People {
public String name;
public int age;
// 构造方法
// 修饰符 类名(){}
// public People() {
// System.out.println(“我是peole的构造方法”);
// }
//
// public People(String name,int age) {
// this.name=name;
// this.age=age;
//// System.out.println(“我是peole的构造方法”);
// }
// 普通方法
public void People() {
System.out.println(“我是peole的People方法”);
}
public void say() {
System.out.println("我是"+name+"的say方法年龄为:"+age);
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
//定义类 修饰符 class 类名
public class Person {
// 属性/成员变量
// 成员变量位置:类以内 方法外。
// 使用范围:当前类内部有效
// 成员变量初值:可以不赋初值,由堆内存分配
// 初始化时机:new 对象时
public String name;
public int age;
public boolean kk;
public int a;
public int b;
public void say3() {
//局部变量初值: 必须赋初值才能使用
// 初始化时机:调用当前方法时 (方法进栈 按行执行时)
String name;
// System.out.println(name);
}
public void say() {
// 在方法内定义的属性我们叫做局部变量
// 局部变量位置:方法内
// 适用范围:当前方法内生效
// 局部变量与成员变量名字相同时 :优先级 局部变量 高于 成员变量
String name=“jerry”;
//使用this 关键字 区分 同名的 成员变量 及 局部变量
//成员变量name
System.out.println(this.name);
//局部变量name
System.out.println(name);
}
public void say1() {
// 在方法内定义的属性我们叫做局部变量
// 局部变量位置:方法内
// 局部变量与成员变量名字相同时 :优先级 局部变量 高于 成员变量
// String name=“jerry”;
//如果没有局部变量 this.name 与 name 相等 皆指成员变量的值
System.out.println(this.name);
System.out.println(name);
}
// 行为/成员方法
public void eat() {
System.out.println(“吃饭”);
}
{ //代码块
System.out.println("代码块");
}
class Body{ // inner class
int gebo=2;
public void dahanzhan() {
System.out.println("打寒战");
}
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
// 塔类
public class Tower {
//属性
public int hp;
public int atk;
public int distance;
//行为
public void atk(Hero h) {
h.beida(atk);
}
public void beida(int blood) {
hp=hp-blood;
if(hp<0) {
System.err.println("当前塔血量为0,被打死了");
System.err.println("恭喜你 获得胜利");
// 游戏停止
System.exit(0);
}else {
System.out.println("我是塔,我被打掉了"+blood +"血,我的剩余血量为"+hp);
}
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
public class Test1 {
public static void main(String[] args) throws InterruptedException {
// TODO Auto-generated method stub
// 已经设计好英雄类 接着按照类这个模板 创建对象
//创建对象的方法 new()
//人是人妈生的 ,对象是new出来的
// libai
//创建对象李白
// Hero libai=new Hero();
// libai.name=“李白”;
// libai.atk=15;
// libai.say();
// Hero daji=new Hero();
// daji.name=“妲己”;
// daji.atk=10;
// daji.say();
// libai.atk();
// daji.atk();
//李白推中路塔
Hero libai=new Hero();
libai.name="李白";
libai.atk=15;
libai.hp=100;
libai.bjgl=60;
//中路塔
Tower zhonglutower=new Tower();
zhonglutower.hp=100;
zhonglutower.atk=20;
//李白 打 中路塔
while(true) {
Thread.sleep(1000);
libai.atk(zhonglutower);
zhonglutower.atk(libai);
}
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
// 塔类
public class Tower {
//属性
public int hp;
public int atk;
public int distance;
//行为
public void atk(Hero h) {
h.beida(atk);
}
public void beida(int blood) {
hp=hp-blood;
if(hp<0) {
System.err.println("当前塔血量为0,被打死了");
System.err.println("恭喜你 获得胜利");
// 游戏停止
System.exit(0);
}else {
System.out.println("我是塔,我被打掉了"+blood +"血,我的剩余血量为"+hp);
}
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
public class Test3 {
public static void main(String[] args) {
// Person p1=null;
for(int i=0;i<3;i++) {
Person p1= new Person();
}
// Person p3= new Person();
}
}
—————————————————————————————————————————
package Test20190805.src.com.neusoft.test.Test20190805.src.com.neusoft.oo;
public class Test4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// People p1=new People(“tom”,18);
// p1.say();
People p2=new People(); //自动生成无参构造器 前提:没有有参构造器时
//如果已经有有参构造器, 则不能自动生成无参构造方法
p2.say();
// p1.say();
// p1.say();
// p1.People();
// new People().say();
// new People();
}
}
—————————————————————————————————————————