Java语言基础—基础知识—变量与常量

2018年3月28日07:59:17
  • A+
所属分类:java基础

1、标识符和关键字;2、声明变量;3、声明常量;4、变量的有效范围

  • 1、标识符和关键字

 

标识符:

标识符是Java程序中必须使用的,但也不是随便使用的,一定的规则。本小节将介绍什么是标识符和标识符的命名规则。

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

int i = 100;

System.out.println(i);// 在控制台输出信息

变量名i就是标识符,标识符由程序员所起,但并不是随便取的,也一定的规则,下面将介绍标识符的命名规则。

 

标识符虽然可以任意取名,但是也要遵循一定的规则,标识符的几点命名规则如下所示:

Java语言的标识符由字母、数字、下划线和美元符号组成,第一个字符不能为数字。

Java语言使用Unicode标准字符集,最多可以识别65535个字符。因此,Java语言中的字母可以是Unicode字符集中的任何字符,包括拉丁字母、汉字、日文和其他许多语言中的字符。

标识符不能是Java的关键字和保留字。

在Java语言中标识符是区分大小写的,如果两个标识符的字母相同但是大小写不同,就是不同的标识符。

 

1、Java中的标识符用于标识类名、变量名、方法名、数组名、文件名。

 

2、标识符的命名规则:由字母、数字、下划线和美元符号组成,但第一个字符不能是数字。同时标识符不能选用Java的关键字和保留字。

 

3、一般的约定命名规则: (1类和接口名:每个词首字母大写,如MyClass,HelloWorld; (2方法名:第一个词的首字母小写,其余词首字母大写,尽量少用下划线,如myMethod,myGetData; (3常量名:基本数据类型的常量名全部用大写字母,各词之间用下划线分隔,如SIZE_NAME; (4变量名:首词首字母小写,其余词首字母大写,不用下划线,尽量少用美元符号。

 

关键字:

int public this finally boolean abstract

continue float long short throw throws

return break for static new interface

if double default byte do case

strictfp package super void try switch

else catch implements private final class

extends volatile while synchronized instanceof char

protecte importd transient implements dafaule  

 

 

  • 2、声明变量

在程序设计中,变量的使用是一个十分重要的环节,定义一个变量,就是要告诉编译器(compiler这个变量属于哪一种数据类型,这样编译器才知道需要配置多少空间,以及能存放什么样的数据。变量都有一个变量名,变量名必须是合法的标识符,内存空间内的值就是变量值。在声明变量时可以是不给予赋值,也可以是直接赋给初值。

 

  • 3、声明常量

在程序运行过程中一直不会改变的量称为常量(constant,通常也被称为“final变量”。常量在整个程序中只能被赋值一次。在为所有对象共享的值时,常量是非常有用的。

 

Java语言基础—基础知识—变量与常量

 

final 数据类型 常量名称[=值]

public class VarAndConstant {

 

// 声明常量PI,此时如不对PI进行赋值,则会出现错误提示

static final double PI = 3.14;

static int age = 23; // 声明int型变量age并进行赋值

public static void main(String[] args) { // 主方法

final int number; // 声明int型常量number

number = 1235; // 对常量进行赋值

age = 22; // 再次对变量进行赋值

// number = 1236;

// //错误的代码,因为number为常量,只能进行一次赋值

System.out.println("常量PI的值为:" + PI); // 将PI的值输出

System.out.println("赋值后number的值为:" +number);//将number的值输出

System.out.println("int型变量age的值为:" + age); // 将age的值输出

}

 

}

 

  • 4、变量的有效范围

变量的效范围是指程序代码能够访问该变量的区域,若超出变量所在区域访问变量则编译时会出现错误。在程序中,一般会根据变量能够访问的区域将变量分为成员变量局部变量

 

 

变量的效范围(作用域 )

(1)在类体中定义的变量被称为成员变量,成员变量在整个类中都效。类的成员变量分为静态变量和实例变量,静态变量通过修饰符static确定,并且可以通过“类名.静态变量名称”的方式在其他类中使用。

 

1 class var{

2    int x=3;         //这里定义了var类的一个实例变量x

3    static int y=30; //这里定义了var类的一个静态变量y

4 }

5 class bar{

6    int a=var.y;

7 /*

8 定义bar类的实例变量a,

9 并把var类中静态变量y的值赋值给a

10 */

11 }

 

 

 

(2)在类的方法体中定义的变量为局部变量,只在当前代码块中效,其生命周期只在该方法被调用时,虚拟机为其分配内存空间,方法调用结束后,则该内存也被释放,在方法中不能定义static变量

 

 

(3)在类中某一方法体内,可直接使用类体创建的静态变量,当该静态变量与该方法体中创建的局部变量重名时,静态变量将被隐藏,如果须调用该类体静态变量时,需使用“类名.静态变量名称”的方式。

 

注:经测试,类体中的实例变量无法在方法中使用——傻叉,你是在main方法中测试的吧?main方法是静态方法,只能引用静态变量,实例变量不是静态的。

 

 

public class DataTypeTest {

static int mydata=414;

static int yourdata=1973;

int varI=1;    //实例变量

public static void main(String[] args) {

int mydata=1314;

System.out.println("类体静态变量mydata的值是"+Number.mydata);

System.out.println("类体静态变量yourdata的值是"+yourdata);

System.out.println("方法内部的局部变量mydata的值是"+mydata);

new DataType().DataTypeTest();

}

 

public   void DataTypeTest() {

System.out.println(varI);

System.out.println(varJ);

}

}

/*

12 输出----------

13 类体静态变量mydata的值是414

14 类体静态变量yourdata的值是1973

15 方法内部的局部变量mydata的值是1314

16 ----------------

17 */

 

 

————————

定义变/常量和变量的初始化

Java 定义变量结构:类型 变量名,这里的变量名要符合标示符规则

1.变量的声明格式:类型变量名[,变量名]=初值,… ;

赋值:[类型] 变量名=值如:int a=5 , b=6 , c , d ;

说明:

  • )变量名必须在作用域中是唯一的,不同作用域中才允许相同名字的变量出现;
  • )只要在同一代码块没有同名的变量名,可以在程序中任何地方定义变量,一个代码块就是两个相对的“{ }”之间部分。

2.变量的使用范围每个变量的使用范围只在定义它的代码块中,包括这个代码块中包含的代码块。

在类开始处声明的变量是成员变量,作用范围在整个类;在方法和块中声明的变量是局部变量,作用范围到它的“}”;

 

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: