当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > Java开发环境搭建与Java和C的不同(上篇)

Java开发环境搭建与Java和C的不同(上篇) 时间:2018-09-26      来源:未知

简史

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 JDK

JVM---Java Virtual Machine 在一台计算机上由软件或硬件模拟出来的计算机。

JAVA 在设计时就很注重移植和跨平台性。比如:JAVA int 永远都是 32 位。不像 c++可能是 16,32位,可能是根据编译器厂商规定的变化。这样话程序的移植就会非常麻烦。Java 针对不同的操作系统有不同的虚拟机。Java 虚拟机机 屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。

JRE --- Java Runtime Environment = JVM + 运行时所用到的类库

JDK --- Java Development Kits = 开发工具 + JRE

一 Java 开发环境搭建

1.在www.oracle.com官方网站Downloads->Java for Developers->Java SE Downloads->JDK

2.安装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程序

如:java HelloWord

注意:生成的字节码文件为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语言中我们学的运算符差不多,这里就不做过多讲解了。

注意:

在字符串中,使用"+"运算符,表示连接两个字符串。

运行结果如下:

helloword

hellowordok

helloword23

helloword5

注意:

在Java中任何类型与字符串相加都转成字符串拼接,还要注意优先级哦!

九、Java中的控制语句

(1) if 语句

用法和C语言一样,只有一个地方需要注意,如下:

(2)switch ....case .... 语句

用法和C语言一样,只有一个地方需要注意,如下:

(3)for 语句

用法和C语言一样,只有一个地方需要注意,如下:

(4) while与do...while语句

用法和C语言一样,只有一个地方需要注意,如下:

(5)break 和 continue

用法和C语言一样,不做过多讲解。

 
 

上一篇:借助minicom进行嵌入式软件测试

下一篇:Java开发环境搭建与Java和C的不同(下篇)

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2022 北京华清远见科技集团有限公司 版权所有 ,京ICP备16055225号-5京公海网安备11010802025203号

回到顶部