关于一些Java的debug和初学使用者的小技巧
1.一天在书中复现了一段代码:
public class Example3_4 {
void test() {
//…………
}
class Overload{
public static void main(String args[]) {
Example3_4 ob=new Example3_4();
double result;
ob.test();
ob.test(10);
ob. test(10,20);
result =ob. test(123.22);
System. out. println("Result of ob. test(123.22):"+result);
}
}
}
error:
错误: 在类 Chapter2.Example3_4 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application
※修改方法:将class Overload删除即可运行
原因是main函数应该在public class Example3_4中才有效
2.下面还有一段不太理解的代码
public class Example3_5 {
public static String name="微学院";
public int i;
public void test1(){
//int j;//在方法中或者块中则不能这样初始化,不然会报错
int j=3;
if(j==3){//块可以访间方法级别的变量,j为testl 方法中的变量
int k=5;
System. out.println("k="+k);//这样写就没有问题
}
// System.out.println("k="+k)块中的变量不能被外部调用,这样写会报错
System. out. println("name="+name+",i="+i+",j="+j);
}
public static void main(String[] args) {
System.out.println(Demo.name);
Demo t=new Demo();
t.test1();
}
}
error:
Demo 无法解析为变量
Demo 无法解析为类型
Demo 无法解析为类型
at hello/Chapter2.Example3_5.main(Example3_5.java:16)
※修改方法:将所以的“Demo”改为class名“Example3_5”即可运行
原因是Demo没有定义,在这个位置应该是class的名称,所以改为Example3_5
运行结果
微学院
k=5
name=微学院,i=0,j=3
3.int类型和String类型的相互转换
int转String:
Integer.parseInt(String a)
String转int:
String.valueOf(int b)