实例变量和局部变量的区别: 实例变量是声明在类中,而不是方法中: 局部变量是声明在方法中的: 局部变量在使用前必须初始化: 局部变量没有默认值!如果在变量被初始之前就要使用的话,编译器会显示错误! 那方法的参数呢?局部变量的规则也适用于它们身上么? 方法的参数基本上与局部变量是相同的——它们都是在方法中声明的(精确的说,应该是在方法的参数列表中声明的,但相较于实例变量来说它也算是局部的)。而参数并没有未声明的问题,所以编译器不可能报错; 这是因为如果调用方法而没有赋值参数时编译器会报错。所以说参数一定会被初始化,编译器会确保方法被调用的时候会有与声明所相符的参数,且参数会自动的被赋值进去。