变量和常量

    1.声明变量

        声明变量是告诉编译器我需要的变量是数据类型,需要多大空间,叫什么名字。这个内存空间就是变量,这个空间里的值就是变量值,变量名就是这个空间的名称。程序运行中变量值是可以不断变化的。

    2.声明常量

        常量(constant)在程序运行过程中只能被赋值一次,能被所有的对象共享值。声明一个常量需要通过“final”关键字限定(常量也被叫做“final变量”)。很多Java程序员都爱使用大写字母给常量命名,但不是必须的。

 1 public class Number {
 2     static final double a = 10.1;  //声明常量a并赋值,此处不直接赋值会报错
 3     static int i = 10;             //声明变量i并赋值,此处可以赋值也可以不赋值
 4 
 5     public static void main(String arg[]) {
 6         final int j;//声明常量j,因为在方法内部,属于局部变量,可以不直接赋值
 7         i = 11;     //对变量i再次赋值
 8         j = 123;    //对常量j赋值
 9         //j = 124;  //错误代码,常量只能赋值一次
10 
11         System.out.println("常量a的值为:" + a);
12         System.out.println("变量i的值为:" + i);
13         System.out.println("常量j的值为:" + j);
14     }
15 }

    运行结果如下图:

 

    3.变量的有效范围

        在程序中会根据变量的有效范围将变量分为“成员变量”和局部变量。

    3.1 成员变量

        在类体中定义的变量被称为成员变量,成员变量在整个类中都有效。类的成员变量又可以分为2种,静态变量和实例变量。

1 public class Number {
2     int x = 2;
3     static double y = 10.1;
4 }                                                                                              

         其中x和y是Number类的成员变量,x是实例变量,y是静态变量。被static修饰的成员变量就是静态变量。静态变量可以跨类使用,通过“类名.静态变量”的方式在其他类中使用。

    3.2 局部变量

        在类的方法体中定义的变量称为局部变量。局部变量只在当前代码块中有效。(成员变量可与局部变量的名字相同,在声明局部变量的方法中,成员变量将会失效)

        在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只在当前定义的方法中有效,不能用于类的其他方法中。局部变量的生命周期取决于方法,当方法被调用的时候,Java虚拟机会给方法中的局部变量分配内存空间,当调用结束后,则会释放方法中的局部变量的内存空间,局部变量也随之销毁。

posted @ 2019-03-18 10:58  乔哥123  阅读(67)  评论(0)    收藏  举报