Java 程序通常经历5个阶段:
1、Edit(编辑):程序员书写代码并保存到 磁盘上;
2、Compile(编译):编译器生成字节码(bytecodes);
3、Load(装入):类装载器(Class loader)在内存中保存字节码;
4、 Verify(校验):校验器Verifier保证字节码不违反安全规则;
5、Execute(执行):释器将字节码翻译成机器码。
Java对标识符的要求:
(1)开头:字母,_和$;
(2)不能以数字打头;
(3)不能包含空白字符、制表、空格、回车、换行符;
(4)不能用关键字。
规范标识符的重要性:
没有规范的命名不是一个科班出身的软件开发者应有的行为
Java标识符规范:
类名称: Mammal
函数名:getAge
常量:MAX_HEIGHT
标识符起名应该尽量做到“望名知义”。
各种进制下的数值:(10)10=(0xA)16=(012)8
Java中的基本数据类型独立于具体平台
整型: byte(8),short(16),int(32), long(64)
浮点型: float(32), double(64)
使用科学计数法定义浮点数值:123.456=1.23456e+2
布尔型: true, false
字符型: ‘a’, ’A’
字符串: “Hello,China” String s1=“abc”,S2=“abc”
利用关键字final声明常量,对于全局的常量(即在整个项目中都可用),通常按以下模式声明:
public static final int MAX_VALUE=512
如果某常量只在本类使用,则应将其定义为private的。
常量名字通常采用大写字母。
Java中除了 int , float等少数几个数据类型,其余的数据类型都用来引用对象。
int、float等这些数据类型称为“原始数据类型(primitive type)”。
Precedence of operators(运算符结合性):除了赋值运算符 = ,所有的结合性都是从左到右
例如: x = y = z 相当于 x = (y = z)
编程建议:
错误:象x=y=z这样的可能引起误解的代码,应该尽量避免,如果确实需要,也应该采用右边加上括号的形式,或者是添加注释。
每个变量都有一个名字、数据类型、所占内存单元数和一个值
名字 对应于内存中的位置
数据类型 决定了它所占用的内存单元数量
值 表示变量所占用的内存单元中所保存的数据。
变量的读写:当新值被赋给变量时,老值将被取代,仅从内存中读数据不会破坏数据
在实际开发中,一般使用变量来存储用户在程序运行时输入的数据。
变量在使用前应保证它有确切的值。
下面简要介绍一下如何在Java应用程序中读入数据。
自动类型转换是安全的:
int intValue=100;
long longValue=intValue;
强制类型转换时,可能会引起信息的损失。
double doubleValue=1234567890;
float floatValue=(float)doubleValue;
System.out.println(floatValue); //1.23456794E9
int number = Integer.parseInt(numberString );
Integer.parseInt方法将 String 转为数字 ( int)
类Integer 属于包 java.lang,它“封装”了一个int类型的整数,因此,它是原始数据类型int的“包装类”。
"The sum is " + sum
使用运算符 + 连接字面量“The sum is” 和计算结果 sum将String 和其它数据类型相加,结果是一个新的String
如果变量的数据类型是一个类的名字,就是引用类型的变量,它将引用一个对象。
String 是个类(注意类名首字母大写)
firstNumber, secondNumber将分别引用两个字符串对象。
如果数据类型是一个原始类型(其名称由小写字母组成),这种类型的变量将直接保存一个原始数据类型的值。
double 是一个原始数据类型
number1, number2变量将保存两个双精度数
Double.parseDouble是一个Double类所定义的静态方法
将 String 数据转为double类型的
返回 double类型的数值
记住静态方法调用语法:类名.静态方法名( 参数 )
Double是原始数据类型double的“包装类”,属于引用类型