首页 > 代码库 > Java中报错No enclosing instance of type caiquan is accessible. Must qualify the allocation with an enclosing instance of type caiquan (e.g. x.new A() where x is an instance of caiquan).
Java中报错No enclosing instance of type caiquan is accessible. Must qualify the allocation with an enclosing instance of type caiquan (e.g. x.new A() where x is an instance of caiquan).
package test;
import java.util.Scanner;
import java.util.Random;
public class caiquan {
public static void main(String[] args){
Game g=new Game();
g.begin();
}
//将这个类定义为静态就好了,也就说改成 static class Game
class Game{
public void begin(){
System.out.println("********************");
System.out.println("A finger-guessing game");
System.out.println("********************");
System.out.println("Start game(1/0)");
Scanner input = new Scanner(System.in);
int result = input.nextInt();
if(result==1){
System.out.println("请输入猜拳次数:");
int num = input.nextInt();
play(num);
}else{
System.out.println("Go Fuck Yourself!");
}
}
public void play(int num){
int userScore=0;//人赢的次数
int pcScore=0;//pc赢的次数
Random r = new Random();
Scanner input = new Scanner(System.in);
while(num>0){
int x = r.nextInt(100)%3+1;
System.out.println("请输入(1,剪刀 2,石头 3,布)");
int s = input.nextInt();
if(s>=4||s==0){
System.out.println("瓜娃子看不懂嗦,只能输入1,2,3!");
}
if(s==1){
switch(x){
case 1:
System.out.println("平局,你出剪刀,电脑出剪刀");
case 2:
System.out.println("你输了,你出剪刀,电脑出石头");
pcScore++;
case 3:
System.out.println("你赢了,你出剪刀,电脑出布");
userScore++;
}
}
if(s==2){
switch(x){
case 1:
System.out.println("你赢了,你出石头,电脑出剪刀");
userScore++;
break;
case 2:
System.out.println("平局,你出石头,电脑出石头");
break;
case 3:
System.out.println("你输了,你出石头,电脑出布");
pcScore++;
break;
}
}
if(s==3){
switch(x){
case 1:
System.out.println("你输了,你出布,电脑出剪刀");
pcScore++;
break;
case 2:
System.out.println("你赢了,你出布,电脑出石头");
userScore++;
break;
case 3:
System.out.println("平局,你出布,电脑出布");
break;
}
}
num--;
}
System.out.println("**************");
System.out.println("你赢了:"+userScore+"次!");
System.out.println("电脑赢了:"+pcScore+"次!");
if(userScore==pcScore){
System.out.println("平局!");
}else if(userScore>pcScore){
System.out.println("你赢了!");
}else{
System.out.println("电脑赢了!");
}
}
}
}
//在Java中,类中的静态方法不能直接调用动态方法。只有将某个内部类修饰为静态类,然后才能够在静态类中调用该类的成员变量与成员方法
Java中报错No enclosing instance of type caiquan is accessible. Must qualify the allocation with an enclosing instance of type caiquan (e.g. x.new A() where x is an instance of caiquan).