如何搭建java开发环境现在java越来越火,很多程序是由java开发完成的。
而且越来越多的程序员加入到java大军里面来。
想学习java?那你必须要学会搭建java开发环境。
如何搭建java环境,对于新手来说,是一个非常大的考验。
本篇文章就为新手介绍java的基本知识,以及教大家如何搭建java开发环境。
一、简史Java 诞生于 SUN (Stanford University Network) Microsystems Inc. Sun 公司从1995 年 Java 语言诞生,1996年发布 JDK 1.0 版本,随后又发布了 JDK1.1, JDK1.2,JDK1.3, JDK1.4, JDK5.0,JDK6 等几个版本, 2009 年4 月被Oracle 收购,从此 java 纳入了 Oracle 旗下,也进入了 JDK7 时代JDK---Java Development Kits 。
Java 技术体系架构一种技术体系架构的诞生,源于他要解决现实生活中的某一类问题。
Java 有三个技术架构:Java SE(Java Standard Edition)标准版这个版本是 Java 平台的核心,它提供了非常丰富的 API 来开发一般个人计算机上的应用程序,为开发普通桌面和商务应用程序提供的解决方案。
Java EE(Java Enterprise Edition)企业版是基于 J2SE 基础扩展的,增加了用于服务器开发的类库。
为开发企业环境下的应用程序提供的一套解决方案,如金融领域,政府政务领域。
Java ME(Java Micro Edition)小型版 (K-Java)是 J2SE的内伸,包含 J2SE的一部分核心类,也有自己的扩展类,增加了适合微小装置的类库:javax.microedition.io.*等。
是为开发电子消费产品和嵌入式设备提供的解决方案。
该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。
三个概念 JVM JRE JDKJVM---Java Virtual Machine 在一台计算机上由软件或硬件模拟出来的计算机。
JAVA 在设计时就很注重移植和跨平台性。
比如:JAVA int 永远都是 32 位。
不像 c++可能是 16,32位,可能是根据编译器厂商规定的变化。
这样话程序的移植就会非常麻烦。
Java 针对不同的操作系统有不同的虚拟机。
Java 虚拟机机屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。
JRE --- Java Runtime Environment = JVM + 运行时所用到的类库JDK --- Java Development Kits = 开发工具 + JRE二、Java 开发环境搭建1.在官方网站Downloads->Java for Developers->Java SE Downloads->JDK2.安装JDK(Java SE Development Kit)开发工具软件3.安装好后,在指定的安装路径下可以看到如下两个文件夹例如:我的安装路径为其默认安装路径,为:C:\Program Files\Java,这个目录下有两个子目录,分别是jdk1.8.0_45 和 jre1.8.0_45注意:[1]JDK(Java Development Kit ) =JRE+开发工具集(例如javac编译工具等)[2]JRE(Java runtime environment)=JVM+java SE标准类库4.设置系统Path环境变量,让javac等工具可以在任何目录运行设置方法如下:[1]新建环境变量 JDK_TOOLS,其内容为C:\Program Files\Java\jdk1.8.0_45\bin[2]在Path环境变量原有内容最前面加上%JDK_TOOLS%;注意:这里的%JDK_TOOLS%表示引用JDK_TOOLS变量内容三、 HelloWord.java程序编写、编译、运行[1]编写:新建HelloWord.java文件,编写内容如下注意:这里面class后面的类名需要与文件名相同,否则编译会报错[2]编译:用cd命令切换到HelloWord.java所在的目录,用javac编译如:javac HelloWord.java编译成功后生成对应的字节码文件HelloWord.class[3]运行:用java命令解释字节码文件即运行Java程序如:javaHelloWord注意:生成的字节码文件为HelloWord.class,这种写法是错误的:java HelloWord.class, Java 会根据传递的HelloWord在当前目录下去寻找对应的HelloWord.class文件四、Java数据类型1.基本数据类型(1)数值型[1]整数类型 byte[占8bit] ,short[占16bit], int[占32bit], long[占64位][2]浮点类型 float[占32bit] , double[占64bit](2)字符型 char [占16bit 整个Unicode字符集](3)布尔类型 boolean [1bit true 或 false]注意:[1]float f = 9.9 这种写法有问题,因为编译器默认认为9.9是一个double类型,这样会丢失精度报错正确的写法:float f = 9.9f[2]long b = 11111111111 这样写有问题,因为编译器默认认为数字都是int类型,报错为过大的整数正确写法:long b = 11111111111L[3]boolean类型的变量结果只能是true或false,当输出boolean类型变量时候,输出的结果为true 或false[4]java中null表示什么都没有2.引用数据类型(1)类 class(2)接口 interface(3)数组五、 Java数据类型间转换[1] boolean类型不能强制转换成任何其它数据类型[2]自动类型转换:容量小的类型自动转换成容量大的数据类型byte->short->int->long->float->double即一个小数据类型的变量或数据可以直接赋值给大数据类型变量注意:对于byte、short、int类型的变量在计算时自动转换为int编译器给出的错误信息:[3]强制类型转换:容量大的类型转换成容量小的数据类型时,要加上强制转换符long a = 100L (数字默认是int型,100L是告诉编译器100是一个long类型数据) int i = (int)a这样做可能造成精度降低或数据溢出,使用时要小心上面的错误解决方案:六、Java与C语言不同1、与C语言不同,JAVA里没有无符号(unsigned)整型。
JAVA的8种基本类型(boolean,byte,short,char,int,long,float,double)都是有符号的。
2、与C语言不同,JAVA里的char类型,占2个字节,专为存放Unicode字符所设计;3、与C语言不同,JAVA里的boolean只能赋值为true或false,不能直接赋值0或1;4、与C语言不同,JAVA里的long类型,不是占4字节,而是占8字节。
5、JAVA与C的不同之处,还有很多:JAVA中没有指针,其实引用就是指针,但不能进行加减,也没有取值(*)和取地址(&)。
JAVA中有垃圾回收机制,不需要自己释放空间;只管new,不需要delete。
JAVA中的基本类型所占内存宽度是固定的,而C里可能跟平台相关。
JAVA中没有预处理指令。
(如C中的#define , #include , #ifdef等)。
JAVA中没有GOTO,但可以break或continue到指定的标签。
JAVA中没有const关键字,而是用static final来定义常量。
JAVA中没有全局变量,却有静态(static)变量。
JAVA中不支持struct和union的类型。
JAVA中不支持可变参数列表。
JAVA中没有BitField的功能。
JAVA中没有typedef的功能。
七、Java关键字对比C语言,Java关键字要多很多。
上表中红颜色标示的关键字,为java中的保留关键字,保留即不能使用的意思。
我们也可以把关键字做一个分类:这些关键字大家现在没必要记住,后面我们在用到的时候,在一个个讲解。
八、Java中常量和变量(I)常量(1)常量表示的是在程序中不能被修改的数据。
(2)声明常量必须用final关键字。
(3)常量分为:整型,浮点型,字符型,布尔型,字符串型常量。
例如,语法:final <数据类型> variable = 值;(II)变量(1)变量与常量的相同点是在声明之前都指定变量的数据类型,变量无final关键字声明。
(2)声明变量语法:<数据类型> variable;(3)命名规则:与C语言类似。
注意:在Java中定义一个常量用关键字"final",在C语言中用的是"const"。
"final"意为最终的,用它的修饰的变量只能赋一次值。
也就是说final修饰的变量在赋值后是不能修改的。
九、Java中的转义字符与运算符1.常用的转义字符2.运算符可以看出,java中的运算符和C语言中我们学的运算符差不多,这里就不做过多讲解了。
注意:在字符串中,使用"+"运算符,表示连接两个字符串。
运行结果如下:hellowordhellowordokhelloword23helloword5注意:在Java中任何类型与字符串相加都转成字符串拼接,还要注意优先级哦!十、Java中的控制语句(1) if 语句用法和C语言一样,只有一个地方需要注意,如下:(2)switch ....case .... 语句用法和C语言一样,只有一个地方需要注意,如下:(3)for 语句用法和C语言一样,只有一个地方需要注意,如下:(4) while与do...while语句用法和C语言一样,只有一个地方需要注意,如下:(5)break 和 continue用法和C语言一样,不做过多讲解。
十一、Java中的数组1.数组的定义在C语言中,我们定义数组的方式如下:数据类型数组名[数组元素的个数];例如:int a[ 3 ];int b[ ];//这种定义由于没有指定数组元素个数,在C语言中是不允许的。
而且我们知道,当一个数组定义好后,它的空间大小也就固定了,一般在栈上开辟空间。
那在Java中,如何定义数组呢?(1)数据类型[] 数组名;例如:int[] a;(2)数据类型数组名[];例如:int a[];以上两种方法在 java中都可以用来定义数组,我们建议大家使用第一种。