20169211《移动平台开发实践》第一周作业

一.教材内容学习总结

二.Java程序开发体验

一.教材内容学习总结

1、Java语言的三种技术架构

1.1 J2EE(Java 2 Platform Enterprise Edition) 企业版

J2EE是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet、Jsp等,主要针对于Web应用程序开发。

1.2 J2SE(Java 2 Platform Standard Edition) 标准版

J2SE是为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发,比如Java版的扫雷。

1.3 J2ME(Java 2 Platform Micro Edition) 小型版

J2ME是为开发电子消费产品和嵌入式设备提供的解决方案。该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。

说明:

(1)Java5.0版本后,三种技术架构分别更名为JAVAEE、JAVASE、JAVAME。

(2)由于现在已经出现了Android、iOS、Windows、Phone等手机操作系统,所以J2ME架构基本上已经不用了。目前,流行的手机软件都是基于这些最新的手机操作系统进行开发。

2、Java语言的特点:跨平台性

2.1 什么是跨平台性?

通过Java语言编写的应用程序在不同的操作系统平台中都可以运行。

2.2 原理是什么?

只要在需要运行java应用程序的操作系统中,先安装一个Java虚拟机(JVM:Java Virtual Machine)即可,由JVM来调用操作系统底层指令解析、执行Java程序,从而在该操作系统中运行。因为有了JVM,所以同一个Java程序各种不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性,也就是说Java语言具有良好的可移植性。

说明:

(1)JVM是不跨平台的,不同的操作系统有不同版本的JVM。

(2)用C++语言编写的程序在Windows系统中可以直接运行,在Linux系统中则不可以。这是因为Windows系统是用C和C++语言编写的,Windows系统中也内置了C和C++的解析器,所以C和C++语言编写的程序可以直接在Windows系统中运行。但Java语言编写的程序如果要在Windows系统中执行,就需要在Windows系统中安装一套能够解析、执行Java程序的软件,也就是JVM(Java虚拟机)。类似的,在Linux、MAC系统中执行Java语言编写的程序也需要安装各自系统对应的JVM。通过这种方式,就实现了Java语言“一次编译,到处运行”的跨平台性。JVM的作用就是搭建了Java语言编写的程序与操作系统之间的桥梁。

二.Java程序开发体验

1、编写运行Hello World

1.1 选择最简单的编辑器:记事本。将Java代码编写入扩展名为.java的文件(源文件)中。

Hello World:代表学习计算机语言的第一个入门小程序。现在泛指接触任何新事物的第一步。

Class:是java中的关键字,用于定义类,java语言的程序代码都需要定义在类中。

关键字:被java语言赋予了特殊含义的单词。

Demo:为了方便使用这个类,给类自定义的类名。

{}:定义该类中代码的范围。

说明:

(1)写代码,阅读性第一,功能性第二,一定要注意写代码的格式!

(2)源文件名和类名可以不一致,但当class前有修饰符public时,则必须一致。

1.2 通过javac命令对该java文件进行编译。

(1)有了java源文件,将其编译成JVM可以识别的文件。

(2)在该源文件目录下,通过javac编译工具对Demo.java文件进行编译。

(3)如果程序没有错误,没有任何提示,就会在当前目录下出现一个Demo.class文件,该文件称为字节码文件,也就是可以执行的java的程序。

1.3 通过java命令对生成的class文件进行运行。

(1)有了可执行的java程序(Demo.class字节码文件),通过运行工具java.exe对字节码文件进行执行。

出现提示:缺少一个名称为main的方法。

说明:使用java命令运行class文件,没有必要加上.class文件后缀。

(2)因为一个程序的执行需要一个起始点或者入口,所以在Demo类中加入如下代码。

(3)对修改后的Demo.java源文件需要重新编译,生成新的class文件后,再执行。发现编译成功,但也没有任何效果,因为程序并没有告诉JVM要帮我们做什么事情,也就是没有可以具体执行的语句。

(4)如果想要和JVM来个互动,只要在main方法中加入一句System.out.println("hello java");。因为对程序进行了改动,所以需要再重新编译,然后运行即可。

说明:

(1)main方法的作用在于保证一个类可以独立运行,因为它是程序的入口。

(2)System.out.print();语句用于告诉系统输出打印数据,可以将括号中的内容打印在控制台上。通过该语句可以直接在控制台看到jvm运行java程序后的结果。

(3)System.out.println();语句与System.out.print();语句的区别是,前者打印后并且换行。

(4)javac命令的作用是对java程序进行语法性检查,一旦出错,就会打印出错误信息。

(5)需要注意的是java会出现连锁错误反应,也就是一个错误,会导致后面程序的多个错误。这时候只需要修改
第一个错误,后面的错误都会解决掉。

(6)java命令可以启动JVM,然后找到相应的class文件,再寻找程序入口,也就是main方法,然后调用该方法执行java程序。

2、常见错误信息-找不到文件

错误可能原因:

(1)文件名写错。

(2)类文件不在当前路径下或者不在classpath(后面会将讲到)指定路径下。

(3)后缀名问题。

“后缀名问题”查找及解决方案如下:

点击“工具”-->“文件夹选项”。

点击“查看”选项卡,并且勾选掉“隐藏已知文件类型的扩展名”。

然后就可以看到文件真正的后缀名为txt,所以找不到Demo.java文件。只需将修改后缀名为java,再重新编译、运行即可。

3、配置classpath环境变量

由于可能频繁执行多个class文件,并且多个class文件可能存储在不同的目录下,那么每次都在命令提示符窗口中切换目录会相当的麻烦。classpath环境变量的作用类似于path环境变量,但是它的作用在于告诉JVM去哪里找到class文件。

JVM查找类文件的顺序:

(1)如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件。

(2)如果配置了classpath环境,JVM会先在classpath环境变量值的目录中查找要运行的类文件。

posted @ 2017-03-05 09:45  20169211_李超  阅读(220)  评论(1编辑  收藏  举报