从0开始学Java-4 变量与常量

打印 上一主题 下一主题

主题 865|帖子 865|积分 2595

  在程序执行过程中,其值不能被改变的量成为常量,其值能被改变的量成为变量。变量与常量的命名都必须使用合法的标识符。

4.1 标识符与关键字

4.1.1 标识符

  标识符可以简单的理解为一个名字,是用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。

  Java语言规定由任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能是数字。标识符不能是Java中的关键字(保留字)。

合法标识符:       非法标识符:
name         4word
user_age       String
$page         User name

  在Java语言中,标识符中的字母是严格区分大小写的,如 good 和 Good 是不同的两个标识符。
4.1.2 关键字

  关键字又称保留字,是Java语言中已经被赋予特定意义的一些单词:
关键字说明关键字说明
abstract表明类或者成员方法具有抽象属性int整数类型
assert断言,用来进行程序调试interface 用于声明接口
boolean布尔类型long 长整数类型 
break跳出语句,提前跳出一块代码 native用于声明一个方法是由计算机相关的语言(如C/C++/FORTRAN语言)实现的 
byte字节类型new用于创建新实例对象 
case用在switch之前,表示其中的一个分支 package 包语句 
catch用在异常处理中,用来捕捉异常 private 私有权限修饰符 
char字符类型 protected 受保护权限修饰符 
class用于声明类 public 公有权限修饰符 
const保留关键字,没有具体含义 return 返回方法结果 
continue回到一个块的开始处short 短整数类型 
default默认,如在switch语句中表示默认分值 static 静态修饰符 
dodo...while循环结构使用的关键字 strictfp 用于声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754 算术标准 
double双精度浮点类型 super 父类对象 
else用在条件语句中,表明当条件不成立时的分支 switch 分支结构语句关键字 
enum用于声明枚举 synchronized  线程同步关键字
extends用于创建继承关系 this 本类对象 
final用于声明不可改变的最终属性,如常量 throw 抛出异常 
float单精度浮点类型 transient 声明不用序列化的成员域 
forfor循环语句关键字 try 尝试监控可能抛出异常的代码块 
goto保留关键字 var 声明局部变量 
if条件判断语句关键字 void 表明方法无返回值 
implemengts用于创建类与接口的实现关系 volatile 表明两个或多个变量必须同步发生变化 
import导入语句 while while循环语句关键字 
instanceof判断两个类的继承关系 finally声明异常处理语句中始终会被执行的代码块 
throws方法将异常处理抛向外部方法   
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4.2 声明变量

  在声明变量时可以是没有赋值,也可以是直接赋给初值
  int age;
  char char1 = ‘r’;
  系统内存可大略分为3个区域,即系统(OS)区、程序(Program)区和数据(Data)区。当程序执行时,程序代码会加载到内存中的程序区,数据暂时存储在数据区中。假设上述两个变量定义在方法体中,则程序加载到程序区中。当执行此程序代码时,会在数据区配置空间给出这两个变量。

 
变量命名规则:
  1)变量名必须是一个有效的标识符。
  2)变量名不可以使用Java中的关键字。
  3)变量名不能重复。
  4)应选择有意义的单词作为变量名。
 
4.3 声明变量final

  在程序执行过程中一直不会改变的量称为常量(constant),通常也被称为 “final 变量”。常量在整个程序中只能被赋值一次。在为所有的对象共享值时,常量是非常有用的。
  在Java语言中声明一个常量,除了要指定数据类型,还需要通过final关键字进行限定:
  final 数据类型 常量名称 [ = 值 ] 
  常量名通常使用大写字母,但这并不是必须的。很多 Java 程序员使用大写字母表示常量,是为了清楚地表明正在使用常量。
  声明变量 π (程序中用 PI 表示):
  final double PI = 3.1415926D;

  当变量被 final 关键字修饰时,该变量就变成了常量,必须在定义时就设定它的初值。
4.3 变量的有效范围

  变量的有效范围是指程序代码能够访问该变量的区域,在程序中,一般会根据变量的 “有效范围” 将变量分为 “成员变量” 和 “局部变量”。
4.3.1 成员变量

  在类体中所声明的变量被称为成员变量,成员变量在整个类体中有效。类的成员变量又可分为两种,即静态变量和实例变量:
  class Demo{
    int x = 54;
    static int y = 20;
  }
  其中 x 为实例变量,y 为静态变量(也称累变量)。如果在成员变量的类型之前加上关键字 static,这样的成员变量称为静态变量。静态变量的有效范围可以跨类,甚至可以达到整个应用程序之内。对于静态变量,除了能在声明它的类内存取,还能直接以 “类名.静态变量” 的方式在其他类内使用。
4.3.2 局部变量

  在类的方法体中声明变量(方法内部定义,“{” 与 “}” 之间的代码中生成的变量)称为局部变量。局部变量只在当前代码块中有效,也就是只能在 “{” 与 “}” 之内使用。
  在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只在当前定义的方法内有效,不能用于类的其他方法中。局部变量的生命周期取决于方法,当方法被调用时,        Java虚拟机会为方法中的局部变量分配内存空间,当该方法的调用结束后,则会释放方法中局部变量占用的内存空间,局部变量也将会被销毁。
  局部变量可与成员变量的名字相同,此时成员变量将被隐藏,即这个成员变量在此方法中暂时失效。

 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天空闲话

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表