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从入门到精通》,以后会随着自己理解的深入进行更新。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,192评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,858评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,517评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,148评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,162评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,905评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,537评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,439评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,956评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,083评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,218评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,899评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,565评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,093评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,201评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,539评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,215评论 2 358

推荐阅读更多精彩内容