java类的成员变量和方法内的局部变量

来源:互联网 发布:3 0和网络教育哪个好 编辑:程序博客网 时间:2024/05/20 21:43

1.变量在使用前必须进行初始化。

2.成员变量和局部变量初始化的区别:

            在类内的成员变量:随着类的加载会有一个默认的初始值,不管这个变量在类中是否被赋值,系统都会为其设置一个默认值。如下例中a的默认初始值为0,而b为null;而只有当用Demo创建对象调用了这个类的构造器时才会自动将3赋值给a;可参考(https://www.zhihu.com/question/36643366)

            局部变量:并没有构造器为其自动的赋个初始值,所以在使用前必须手动的为其赋值。

        

                 class Demo

                {

                

                   int a=3;

                  String b;

                  b="A"  //报错

               public  static void main(String[] args)

                {

                 int c;

                c=3;

                }

                }

3 上例中报错的原因:在类中只能定义成员,方法,内部类。向b="A"这样的语句java规定在类中不能用,想用可以在构造器中使用。而在方法中却可以这样做。


4成员变量可以先使用后定义,局部变量必须先定义在使用:如下:因为void是属于对象的,调用demo()时候必先创建对象,与此同时成员变量X已经存在了。

                       class Test

                     {

                            void demo()

                            {

                               System.out.println(X); //先使用后定义

                             }

                            String X;

                      }



             



0 0