------- android培训、java培训、期待与您交流! ----------
1.JDK,JRE,JVM的作用和区别?
JDK:保证Java语言的开发。包含JRE和tools(开发工具)。
JRE:保证Java语言运行。包含JVM和class library(核心类库)。
JVM:保证Java语言跨平台。为不同的操作平台提供一个JVM。
Java语言是跨平台的, JVM不是跨平台的。
如果JVM是跨平台的,那就不用为不同的
操作平台提供不同的JVM了,只需要一个就行了。
2.为什么要配置Path,以及怎么配置?
为什么要配置Path?
其实我们可以直接在JDK的安装目录bin下,写Java程序,并运行。
但是,这样做,不好也不安全。为了保证我们在任意的目录下可以
使用javac和java命令,我们才去配置Path环境变量。
怎么配置?
A:直接把目录配置过来
path:D:\develop\Java\jdk1.7.0_51\bin;以前的path
B:配置JAVA_HOME,修改path。
JAVA_HOME : D:\develop\Java\jdk1.7.0_51
path : %JAVA_HOME%\bin;以前的path
3.为什么要配置classpath?
为了保证在任意目录下去使用class文件。模拟path原理,java提供
了一个classpath。
4.关键字
(1)在Java中被赋予了特殊含义的单词。
(2)特点:全部小写。
5.标识符
(1)就是给类,变量,方法等起名字。
(2)组成规则:
A:由数字,字母及下划线,$组成。
B:不能以数字开头。
C:不能和关键字重名。
(3)命名规则:
见名知意,驼峰命名。
A:包
全部小写,如果多级包,用 . 分开。
举例:
package com;
package cn.itheima;
域名反转。
www.itheima.com
com.itheima....
B:类和接口
如果是一个单词,首字母大写。
举例:Hello,Demo,Test,Inter
如果是多个单词,每个单词的首字母大写
举例:HelloWorld,StudentDemo
C:方法和变量
如果是一个单词,首字母小写。
举例:name,age,show()
如果是多个单词,从第二个单词开始的每个单词首字母大写
举例:studentName,setName(),getAge()
D:常量
全部大写,如果多个单词,用_连接
举例:PI,STUDENT_MAX_AGE
6.注释:
(1)对代码进行解释说明的文字。
(2)分类:
A:单行注释 //
B:多行注释 /* */
C:文档注释(javadoc工具) /** */
(3)好处:
A:对代码解释说明
B:调试错误
7.常量
(1)就是在程序运行的过程中,其值不发生改变的量。
(2)分类:
字面值常量:
整数常量
小数常量
字符常量
布尔常量
字符串常量
空常量 null
自定义常量:
final
(3)Java中对整数常量的表现形式:
二进制:(JDK7新特性)
八进制:
十进制:
十六进制:
8.变量
(1)就是在程序运行过程中,其值发生改变的量。
(2)格式:
数据类型 变量名 = 初始化值;
9.数据类型
(1)分类:
<1> 基本类型:4类8种
整型: 字节
byte 1
short 2
int 4
long 8
浮点型:
float 4
double 8
布尔型:
boolean 1
字符型:
char 2
(默认)整型: int
浮点型:double
<2>引用类型:
接口 interface
类 class
数组 [ ]
10.类型转换
(1)数据参与运算:
要求类型一致
(2)分类:
隐式转换:从小到大
A:boolean不参与
B:遵循如下规则
byte,short,char-->int-->long-->float-->double
强制转换:从大到小
这种做法一般不推荐。因为会有数据的精度损失。
例题:
short s = 5;
s=s+2;
s+=2;
有什么区别?
s=s+2 //编译失败,因为s会被提升为int类型,运算后的结果还是int类型。
//无法赋值给short类型。
s+=2 //编译通过,因为+=运算符在给s赋值时,自动完成了强转操作。