面向JAVA程序员的面试问题
错误地点:
第1、4、5行超出字节类型范围(-128 ~ 127);
第二,全局整型变量X和Y在声明的时候没有声明为静态,导致第18,20,22行变量X和Y使用错误。不能在静态块中引用非静态成员。
第三,从check方法可以看出,返回的是一个布尔类型的变量,但是程序中的返回操作都放在if语句块中,所以如果没有if语言执行,就没有返回值,所以要加上一个默认的返回值。。。
第4、28和29行是错误的。这两个变量是最终的,当然,它们的值不能改变。。。。。。
以第5、32、35行为例,使用case时,必须返回常量、整数或枚举类型,有两种修改方法。(1)上面不是定义了这两个整数值吗,直接case 0,case 1,(2)在上面的定义处,加上final。
怎么了:
第一,在定义角色横坐标和角色纵坐标变量时,最好放在方法中,因为你的角色可能有多个实例,每个实例都会有自己的坐标,而static不属于一个实例,而是属于整体。所有的角色只能用一对坐标,感觉不对。。。其他全局变量也是如此,可以再考虑。。
第二,多加注释,别人可能看不到check方法中的几个if是做什么的,很费时间(大家的观点)。