Java基础介绍运行机制笔记
1. 基础知识点图解

- 编程语言核心结构:变量、基本语法、分支、循环、数组、……
- Java面向对象的核心逻辑:OOP、封装、继承、多态、接口……
- 开发Java SE高级应用程序:异常、集合、I/O、多线程、反射机制、网络编程…
2. 各种语言对比
| 名称 | 适用对象 |
| C | 操作系统、嵌入式领域、数据库、服务器、单片机、编译器、Linux开发 |
| C++ | 开发桌面软件、操作系统、图形处理、游戏、网站、搜索引擎、数据库 |
| Java | Android平台应用、应用服务器程序、网站、嵌入式领域、大数据技术(包括Hadoop及其他大数据处理技术)科学应用等 |
| C# | 在微软云计算平台Windows Azure和.NET框架创建现代网页应用,开发Windows终端应用,开发企业级桌面应用 |
| Python | 人工智能、数据科学、Web应用、用户交互界面、自动化任务、统计和科学计算等 |
3. Java诞生
Sun公司(斯坦福大学网络,不是太阳,音读:san)Jgosling团队在1990年Green项目中急需一种语言实现平台独立性为此创造了Java语言。1995年正式推出Java,同时Web此时开始兴起,java也投入广泛使用。目前,随着Java技术在Web方面的不断成熟,已经成为Web应用程序的首选开发语言。
4. Java技术体系平台
- Java SE(Java Standard Edition)标准版:支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE
- Java EE(Java Enterprise Edition)企业版:是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet 、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE
- Java ME(Java Micro Edition)小型版:支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME
5. Java主要特性
- 易学性:Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
- 强制面向对象:Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
- 分布式:Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
- 健壮性:Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
- 安全性:Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。
- 跨平台性:Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
- 解释型:如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统的解释器中运行。
- 性能略高:与那些解释型的高级脚本语言相比,Java的性能还是较优的。
- 原生支持多线程:在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
6. Java运行机制
- 核心机制:Java虚拟机
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。对于不同的平台,有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
因为有了JVM,同一个Java 程序在三个不同的操作系统中都可以执行。这样就实现了Java 程序的跨平台性。

流程示例:

- Java运行环境搭建:JDK、JRE
JDK(Java Development Kit Java开发工具包):给Java开发人员使用的,包含java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。(其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等)
JRE(Java Runtime Environment Java运行环境) :包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等。(如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可)
简单而言,使用JDK的开发工具完成的java程序,交给JRE去运行。

JDK = JRE + 开发工具集(例如Javac编译工具等)
JRE = JVM + Java SE标准类库
Java基础介绍运行机制笔记的更多相关文章
- 《Java疯狂讲义》(第3版)学习笔记 2 - Java语言的运行机制
内容 1.高级语言的运行机制 2.Java 语言的运行机制 1.高级语言的运行机制 高级语言主要分为编译型语言和解释型语言两类. 编译型语言是指使用专门的编译器.针对特定平台(操作系统)将高级语言源代 ...
- JVM学习001通过实例总结Java虚拟机的运行机制
JVM学习(1)——通过实例总结Java虚拟机的运行机制-转载http://www.cnblogs.com/kubixuesheng/p/5199200.html 文章转载自:http://www.c ...
- 深入解析java虚拟机-jvm运行机制
转自oschina 一:JVM基础概念 JVM(Java虚拟机)一种用于计算设备的规范,可用不同的方式(软件或硬件)加以实现.编译虚拟机的指令集与编译微处理器的指令集非常类似.Java虚拟机包括一套字 ...
- Java基础:类加载机制
之前的<java基础:内存模型>当中,我们大体了解了在java当中,不同类型的信息,都存放于java当中哪个部位当中,那么有了对于堆.栈.方法区.的基本理解以后,今天我们来好好剖析一下,j ...
- Java基础:GC机制
上一节,简单的介绍了java当中的内存模型,那么经常和内存模型一起提到的JAVA垃圾回收机制当然也需要在这里一并的总结一下. 所谓是垃圾回收机制,用通俗的话来说,就是将那些没有被任何变量引用的实例对象 ...
- 《疯狂Java讲义》(二)---- Java程序的运行机制和JVM
1. 运行机制 Java源文件(*.java)-----使用javac编译----编译成*.class文件----使用java解释执行----特定平台的机器码 2. 原理 负责解释执行字节码文件的就是 ...
- java基础介绍(转)
很全面的介绍JAVA基础的文档 Java 编程简介,第 1 部分: Java 语言基础 http://www.ibm.com/developerworks/cn/java/j-introtojava1 ...
- 全面理解Java异常的运行机制
1. 引子 try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解.不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单.听话. ...
- java基础之反射机制
一.概念 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为jav ...
随机推荐
- EntityFrameworkCore 一对一 && 一对多 && 多对多配置
基本数据结构 表设计如下: 入学记录 public class AdmissionRecord { [Key] public long Id { get; set; } public DateTime ...
- WPF 获得DataGridRow和 DataGridCell的方法
原文:WPF 获得DataGridRow和 DataGridCell的方法 原文地址 简介 在WPF中,DataGrid控件并没有提供访问其DataGridRow或者DataGridCell的方法. ...
- Code First 连接已有数据库
连接数据库 生成结果并没有一个可视化界面(Model First有) 其他 连接数据库之后,可以采用migration管理第一次add-migration XX ...
- 修改Hosts不生效的一个场景-web 专题
准备工作 1.在 QQ互联 申请成为开发者,并创建应用,得到APP ID 和 APP Key.2.了解QQ登录时的 网站应用接入流程.(必须看完看懂) 为了方便各位测试,直接把我自己申请的贡献出来:A ...
- 模拟QQ窗口抖动效果(通过MoveWindow和Sleep进行模拟)
RECT rtWindow; GetWindowRect(&rtWindow); //long x = 400; //long y = 200; long x = rtWindow.left; ...
- 3D-Touch Home Screen Quick Actions 使用
1. 3D-Touch简单介绍 3D-Touch是iPhone 6s推出的一种可以让你与手机进行互动的全新方式.这一次,iPhone 能够感应你按压屏幕的力度.除了轻点.轻扫.双指开合这些熟悉的 Mu ...
- 零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II
原文:零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II 延续上一章的CheckBox教学,本章将以实作继续延伸更灵活的运用CheckB ...
- Android零基础入门第61节:滚动视图ScrollView
原文:Android零基础入门第61节:滚动视图ScrollView 前面几期学习了ProgressBar系列组件.ViewAnimator系列组件.Picker系列组件和时间日期系列组件,接下来几期 ...
- .net的数据类型说明
C#提供称为简单类型的预定义结构类型集,简单类型通过保留字标识, 而这些保留字只是System命名空间中预定义结构类型的别名. 保留字与预定义结构类型的对应如下: 保留字 预定义结构类型 sbyte ...
- 前端工程师应该都了解的16个最受欢迎的CSS框架
摘要: 今天给大家分享16个最受欢迎的CSS框架.这些是根据笔者的爱好以及相关查阅规整出来的.可能还有一些更棒的或者您更喜欢的没有列举出来.如果有,欢迎留言! Pure : CSS Framework ...