Java的一些基本概念整理

1.Java是一种面向对象高级程序设计语言。

2.Java的按其应用范围可以分为3个版本:

I.Java Platform, Standard Edition (Java SE)

也就是Java的标准版,是Java的基础,主要用于桌面应用程序的开发。

II.Java Platform, Enterprise Edition (Java EE)

是Java的企业版,主要用于开发企业级分布式的网络程序。

III.Java Platform, Micro Edition (Java ME)

其主要用于嵌入式系统开发,为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。

3.Java语言的特点:

简单、面向对象、分布性、可移植性、解释性、安全性、健壮性、多线程、高性能、多态

4.Java的核心是面向对象的程序设计(OOP-Object Oriented Programming ),而所有面向对象的程序设计语言,包括Java,都具有三种特性:

a.封装:将数据成员和属于此数据的操作方法,放在同一个实体或对象中。(模块化、信息隐藏 )

b.继承:父类定义一些通用的属性与行为,其子类继续使用。(实现代码复用、简化设计过程)

c.多态:在同一个类中可有许多同名的方法,但其参数数量与数据类型不同,而且操作过程与返回值也可能会不同(解决其他语言中不能重名的问题)

5.Java是可以跨平台运行的,而其运行机制如下图:*****重要!

Java运行机制

程序代码经过编译之后转换为一种称为Java字节码的中间语言(.class文件),Java虚拟机(JVM)将对字节码进行解释和运行。编译只进行一次,而解释在每次运行程序时都会进行。编译后的字节码采用一种针对JVM优化过的机器码形式保存,虚拟机将字节码解释成机器码,然后在计算机上运行。

Java工作机制

5.1 Java运行机制-虚拟机

实现平台无关性的基础就是Java虚拟机JVM,是以Java字节码为指令组的软CPU。负责对本地*.class文件解释执行。

Java虚拟机包含类加载器(用来取得从网络或本地的类文件)、字节确认器(确认类文件是否有正确的格式)、以及JIT实时编译器(使虚拟机能提高到编译式的运行效率)。

5.2 Java运行机制-字节码

*.class文件与机器码不同,不是真正的CPU可运行的指令代码,故又称伪代码。

通过JVM以及JRE将其转成本地机器代码,达到“一次撰写,到处运行”。

6.Java环境

The Java SE System Development Kit (JDK): Java 语言的软件开发工具包。包括以下四种:

(1).Java Runtime Environment (JRE) (Java执行环境)

JDK和JRE有啥区别呢?    答:JDK是Java的开发工具包,里面包括一些类和工具,当然也是包括JRE的,是给程序员开发用的。  JRE是Java运行时候的环境,包含了Java虚拟机,Java的一些基础类库。  总结:如果想运行Java程序,只需要安装JRE就好了,而如果想开发Java,必须安装JDK

(2).Tools (各种工具程序)

(3).Java Class Library Source Files (Java类库源码)

(4).Demo (关于各种类的例程)

7.Java IDE(Java集成开发环境):Eclipse、IntelliJ等

8.Java概念图

Java概念图

如图所示,有几个名词需要解释以下:

javac:Java编译器,将Java源代码转换成字节码。

java:Java解释器,直接从类文件执行java应用程序字节代码。

appletviewer:小程序浏览器,一种执行HTML文件上的java小程序的Java浏览器。

javadoc:根据java源码及说明语句生成HTML文档。

jdb:Java调试器,可以逐行执行程序,设置断点和检查变量。

javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

以下为几张重要的图示:

Java开发过程


Java执行过程

9.Java程序的分类:

Java Application

由JAVA解释器独立运行字节码、由专门的命令行启动程序执行、程序中有定义了main()方法的主类

Java Applet

不能独立运行,字节码必须嵌入HTML文档、当浏览器调用含APPLET的Web页面时执行、程序中含有java. applet. Applet 类的子类

10.Java里面一些重要的包:

java.AWT  提供了容器和众多组件,是图形用户界面设计不可缺少的,也是一个与平台无关、用于图形用户界面编程的类库集合。

java.applet  为创建小应用程序提供必要的元件,包括声音播放资源。。

java.io 提供与设备无关的输入、输出流支持。

java.lang  提供支持Java的基础类。

java.net  提供支持联网的类。

java.util  提供实用方法和数据结构的类。


注:以上资料参考老师上课课件以及《Java从入门到精通》,以后会随着自己理解的深入进行更新。

你可能感兴趣的:(Java的一些基本概念整理)