Java是完全面向对象的、安全可靠、与平台无关的编程语言。
Java的三种技术构架:JAVAEE企业版、JAVASE标准版、JAVAME小型版。
Java的跨平台性基础:在需要运行Java的操作系统上安装JVM虚拟机(JVM并不能跨平台,只是在相应的系统上安装对应的JVM)。
二、Java环境搭建
任何一门语言的学习,首先都要搭建环境,JRE(内含JVM和Java程序所需的核心类库)是包含Java的运行环境,JDK包括Java的开发环境和运行环境。我们需要安装的是JDK,能满足我们的各种使用需要,期间我们涉及到环境变量path和classpath。path和classpath的区别在于:
1、path和classpath的区别
path是操作系统对运行软件的环境变量,classpath是java运行软件对class文件的环境变量
2、为什么要设置path和classpath
path:当我们调用java中的javac、java以及javadoc等多种应用程序时,操作系统需要找到目录下的exe文件,这么会很麻烦,通常我们会通过设置path环境变量的方式,将应用程序所在的目录告诉操作系统,那么当我们需要调用该应用程序时,系统会自动在path中获取路径,快捷方便。
classpath:利用javac编译java文件后会获得后缀为class的字节码文件,这时我们运行java应用程序,需要找到class文件所在的路径,如果不设置 classpath,我们需要进入到class文件所在的文件才能执行该功能,而通过设置classpath我们可以更加快捷方便的执行操作。
3、path和classpath的设置方法
path的设置方法有两种:第一种方式是可以通过我的电脑----属性----高级----环境变量的方法找到系统的path进行设置,通过该方法设置的path我们可以一劳永逸的解决路径问题,不用在重复设置。当然如果在dos命令行开启的情况下对path值进行修改,则需要重启dos命令行才能使设置生效。第二种方式是在dos命令行中通过setpath命令进行设置,不同于第一种方式,通过该方法设置的path只在该dos窗口下有效,一旦重启dos命令行,之前的设置就会清空,需要再次重新设置,如果是用之前的dos命令行调用start方法开启新的命令行,则path的设置依旧有效。在pass中,每个设置的路径都用“;”隔开,有时候应用程序路径会发生变化,一般我们新增一个path,并在系统path中使用"%"包裹,系统会自动获取”%“中对应的路径。
classpath可以通过命令行set classpath=xxx设置就可以使用,如果配置了classpath且路径后面没有";",虚拟机只会访问classpath路径中的class文件,如果后面有“;”,虚拟机会访问classpath路径,然后在访问当前路径,但我们一般不会加";", 若真的需要访问classpath和当前路径,可以通过set classpath=.;xxxx的方式实现。如果没有设置classpath,会寻找当前路径。
三、Java的语言基础个别介绍
1、关键字
2、标识符:在程序中自定义的一些名称。定义规则为
(1)数字不能开头;
(2)不能使用关键字;
(3)书写形式:包名 xxx 类名和接口名 XxxXxx 变量名和函数名 xxxXxx 常量名 XXX
3、注释
4、常量
(1)整数常量 (2)小数常量 (3)布尔型常量 (true、false) (4)字符常量 (5)字符串常量 (6)null常量(null)
整数常量在java中有三种表现形式:十进制、八进制(前面加0,如0166)、十六进制(前面加0x,如0xa123),他们之间的相互转换就是乘以或除以相应的进制数,在计算机中数据都是以二进制的形式存在,3个二进制位换算成一个八进制位,4个二进制位换算成一个十六进制位,值得注意的是负数二进制的获取是通过正数的二进制取反在加一的方式获得的。
如:6=110 00000110 ~00000110--》11111001 +1 --》11111010 即为-6
负数的二进制最高位都是1,一般都说最高位都是符号位,二进制都是1,对应的十进制是-1.
5、变量:用来存储不断变化的同一类型的常量,书写格式为:数据类型 变量名=初始化值。
8个bit(8个二进制位 )为一组,称为一个字节(byte)。
Java语言是强类型的语言,定义了明确的具体数据类型,在内存中分配了不同大小的内存空间
这里就涉及到了数据类型,基本数据类型有:
(1)整数型[byete(1个字节 -128~127),short(2个字节),int(4个字节),long(8个字节,后面加l)] (默认为int)
(2)浮点型[float(4个字节,后面加f),double(8个字节)](默认为double)
(3)字符型[char(2个字节)]
每个字符都对应一个short类型的整数,“A”对应的65,字符'1'和数字1是不一样的。
(4)布尔型(boolean)
引用数据类型有:(1)类(class)
(2)接口(interface)
(3)数组([])
它们的书写形式见代码:
class Bianliang
{
public static void main(String[] args)
{
int x=2;
x=x+3;
byte a=3;//3为int,在byte范围内,会自动变为1个字节,会做自动转换
a=(byte)(a+3);//自动提升为int,因为a值不确定,所以不会自动转换不能赋值给byte,需要强制转换成byte,byte+int会自动类型提升,小向大提升
short b=2;
b=(short)(b+5);
long c=2l;//int变long损失精度,所以需要标注l
c=(long)(2+6);
float d=2.3f;
d=(float)(d+2.3);
System.out.println(x);
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
} //进入java文件所在目录,调用javac xx.java编译文件,调用java class文件执行java程序
}