变量是Java程序的一个基本存储单元。变量由一个标识符,类型及一个可选初始值的组合定义。此外,所有的变量都有一个作用域,定义变量的可见性,生存期。接下来讨论变量的这些元素。
声明一个变量
在Java中,所有的变量必须先声明再使用。基本的变量声明方法如下:

type identifier [ = value][,identifier [= value] ...] ;

type是Java的基本类型之一,或类及接口类型的名字(类和接口类型在本书第1部分的后部讨论)。标识符(identifier)是变量的名字,指定一个等号和一个值来初始化变量。
请记住初始化表达式必须产生与指定的变量类型一样(或兼容)的变量。声明指定类型的多个变量时,使用逗号将各变量分开。
以下是几个各种变量声明的例子。注意有一些包括了初始化。

int a, b, c; // declares three ints, a, b, and c.
int d = 3, e, f = 5; // declares three more ints, initializing
// d and f.
byte z = 22; // initializes z.
double pi = 3.14159; // declares an approximation of pi.
char x = 'x'; // the variable x has the value 'x'.

你选择的标识符名称没有任何表明它们类型的东西。许多读者记得FORTRAN预先规定从I到N的所有标识符都为整型,其他的标识符为实型。Java允许任何合法的标识符具有任何它们声明的类型。

Java新职篇:声明一个变量相关推荐

  1. Java新职篇:变量的作用域和生存期

    到目前为止,我们使用的所有变量都是在方法main()的后面被声明.然而,Java允许变量在任何程序块内被声明.在第2章中已解释过了,程序块被包括在一对大括号中.一个程序块定义了一个作用域(scope) ...

  2. Java新职篇:一维数组

    数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法. 一维数 ...

  3. Java新职篇:编译程序(2)

    要编译示例程序Example,须运行编译器程序javac,并在命令行上指定源程序文件名,格式如下所示: C:>javac Example.java 编译器javac产生了一个名为Example. ...

  4. Java新职篇:面向对象编程的3个原则是什么?

    所有面向对象的编程语言都提供帮助你实现面向对象模型的机制,这些机制是封装,继承及多态性.现在让我们来看一下它们的概念. 封装 封装(Encapsulation)是将代码及其处理的数据绑定在一起的一种编 ...

  5. Java新职篇:类型提升的约定

    除了将byte型和shorts型提升到int型以外,Java定义了若干适用于表达式的类型提升规则(type promotion rules).首先,如刚才描述的,所有的byte型和short型的值被提 ...

  6. Java新职篇:for循环

    你可能从先前的编程经验已经知道,在几乎所有的编程语言中,循环语句都是其重要组成部分.Java也不例外.事实上,你将在第5章中看到,Java提供了一套功能强大的循环结构.For循环也许是最通用的.如果你 ...

  7. Java新职篇:是什么是布尔型?

    Java有一种表示逻辑值的简单类型,称为布尔型.它的值只能是真或假这两个值中的一个.它是所有的诸如a<b这样的关系运算的返回类型.布尔类型对管理像if.for这样的控制语句的条件表达式也是必需的 ...

  8. java如何抽象一辆车,java新职篇:面向对象之抽象

    面向对象编程的一个实质性的要素是抽象.人们通过抽象(abstraction)处理复杂性. 例如,人们不会把一辆汽车想象成由几万个互相独立的部分所组成的一套装置,而是把汽车想成一个具有自己独特行为的对象 ...

  9. Java新职篇:使用程序块

    在Java中,可以将2个或2个以上的语句组成一组,这样的一组语句称为程序块(Codeblocks).程序块是通过将所属语句放在花括号中来实现.一旦创建了程序块,它就成为一个逻辑单元,可以作为一个单独的 ...

最新文章

  1. HDU1002 Problem II(大数相加)(C++题解)
  2. 005_logback介绍
  3. 防止ACCESS数据库被下载的9种方法
  4. 前端 -- jQuery
  5. python命令行模式怎么输入_python获得命令行输入的参数的两种方式
  6. 雷蛇用户计算机不满足系统要求,我的RazerBook13已经升级Windows11了
  7. Navicat加载缓慢
  8. python 欢迎自己程序编写_神操作!一句查询让Python帮忙自己写程序
  9. 全球计算机一起炼丹是怎样的体验?
  10. zepto,kissy前端框架实现跨域
  11. 无法下载文件或程序时的解决方法
  12. 【原创】关于2013、2014款Macbook Air安装Windows的那点事
  13. 快速的在Adobe Illustrator中创建羊驼插图教程
  14. 新式茶饮“拿捏”年轻人,“八马茶业”们的出路在哪?
  15. oracle修改open_cursors,oracle open_cursors
  16. endnote 中文论文中的et al处理
  17. rageframe(PHP微擎)树分类(curd)
  18. 记录配置tomcat配置默认项目session值失效的解决过程
  19. 阿里开源项目合集,你值得拥有
  20. 大数据、云计算、物联网、数据仓库、OLAP、OLTP、等大数据你必须知道并且了解的概念及相关关系,我的一些总结

热门文章

  1. [转载] 夯实Java基础系列8:深入理解Java内部类及其实现原理
  2. RPC 框架之 Goole protobuf
  3. 2018暑期周总结报告(四)
  4. Python3模块: hashlib
  5. ASP.NET Web API 提升性能的方法实践
  6. 手机页面操作栏的创建及WebFont的使用
  7. 《phrack》黑客杂志
  8. php实现抽象工厂模式(转)
  9. java web 21_JavaWeb——day21
  10. python编写spark程序 视频_【Python版pyspark】Spark大数据基础入门视频课程