我想模拟射击。该枪有6发子弹。每次射击后,子弹的数量应减少。
这是代码
public interface Gun {
public void shot();
public void reload();
}
这是主要的:
package com.example;
class HelloCodiva {
public static void main(String[] args) {
Pistol pistol = new Pistol();
Gun gun;
gun = new Pistol();
gun.shot();
System.out.println(pistol.getBullets());
gun.shot();
gun.shot();
}
}
class Pistol implements Gun {
private int bullets;
private int damage;
private boolean reload;
public Pistol () {
this.bullets = 6;
this.damage = 10;
}
@Override
public void shot() {
this.bullets-=1;
System.out.println("Shotting");
}
@Override
public void reload() {
if(reload){
System.out.println("Reloading...");
reload = false;
}
}
public int getBullets() {
return bullets;
}
}
但我总是得到相同的初始金额(6)。我做错了什么?
最佳答案
你是从
Gun gun;
gun = new Pistol();
但算上子弹
Pistol pistol = new Pistol();
System.out.println(pistol.getBullets());
关于java - 我可以在已实现的方法中执行哪些操作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57240961/