Java语言简介及发展

简介: Java语言简介及发展

Java语言的发展历史

● 1991年,James Gosling(詹姆斯•高斯林)所在sun公司内部成立Green小组开始研发

● 1995年正式确立

● 1996年1.0版本发布

● 从java1.5开始版本号改为java5,java6...

● 2009年SUN公司被Oracle公司收购

● 现在java每半年推出一个新版本(每年3月和6月)

Java语言的特点

●开源          ●简单易学       ●平台无关性   ●面向对象

●支持网络   ●多线程机制   ●动态内存管理机制(只需申请内存空间,何时释放不用管)

●安全          ●生态丰富       ●高性能

java语言如何实现跨平台

在不同操作系统上安装不同java虚拟机;在window(开发),Linux(运行),mac上安装不同虚拟机只需开发一次,就可在不同操作系统上运行;相当于一次编写,到处执行。

关于JVM的相关知识:

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一个虚构出来的计算机环境,是通过在实际的计算机上仿真模拟各种计算机功能来实现的,因为有了不同的JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性,也称为Java具有良好的可移植性, 但是前提是要具有不同的JVM.

Java语言运行机制

● 开发一个.java文件(源文件)

● 使用java编译器将.java文件编译为标准统一的.class文件(字节码文件)

● 把编译后的.class文件交给对应平台的虚拟运行即可

总之, java开发运行要自己提供一套环境

Java运行环境的安装与配置

了解JDK,JRE,JVM三者之间的关系:

1.JDK(Java Development Kit Java开发工具包)

      JDK是提供给Java开发人员使用的,其中包含了java的各种编译工具 ,打包工具等, 也包括         了JRE.


2.JRE(Java Runtime Environment Java运行环境)


      JRE中包括java程序运行所需要的核心类库,也包含Java虚拟机.

3.JVM(Java Virtual Machine Java虚拟机)

      JVM是最终运行java程序的核心环境

相关文章
|
18天前
|
数据可视化 Java
Java语言使用DL4J实现图片分类
【6月更文挑战第14天】Java语言使用DL4J实现图片分类
30 3
|
20天前
|
Java 编译器 测试技术
Java基础16-Java注解简介和最佳实践(二)
Java基础16-Java注解简介和最佳实践(二)
24 4
|
13天前
|
前端开发 Java 关系型数据库
JavaWeb开发简介
JavaWeb开发简介
17 0
|
20天前
|
Java 调度
Java并发基础-线程简介(状态、常用方法)
Java并发基础-线程简介(状态、常用方法)
18 0
|
8天前
|
算法 Java
垃圾回收机制(Garbage Collection,GC)是Java语言的一个重要特性,它自动管理程序运行过程中不再使用的内存空间。
【6月更文挑战第24天】Java的GC自动回收不再使用的内存,关注堆中的对象。通过标记-清除、复制、压缩和分代等算法识别无用对象。GC分为Minor、Major和Full类型,针对年轻代、老年代或整个堆进行回收。性能优化涉及算法选择和参数调整。
19 3
|
14天前
|
Java 数据安全/隐私保护 开发者
Java是一种完全支持面向对象编程的语言,其面向对象特性包括封装、继承、多态和抽象等
【6月更文挑战第18天】**面向对象编程(OOP)通过对象封装状态和行为,实现问题域的抽象。Java全面支持OOP,核心特性包括**: - **封装**:保护数据安全,隐藏内部细节。 - **继承**:子类继承父类属性和行为,促进代码重用。 - **多态**:一个接口多种实现,增强灵活性和扩展性。 - **抽象**:通过接口和抽象类抽离共性,简化复杂性。 **Java的OOP便于理解和解决复杂系统问题。**
27 3
|
20天前
|
安全 Java 开发者
Java基础16-Java注解简介和最佳实践(一)
Java基础16-Java注解简介和最佳实践(一)
25 5
|
21天前
|
安全 Java API
Java一分钟之-GraphQL:查询语言与API设计
【6月更文挑战第11天】GraphQL,一种革命性的查询语言,正在改变Web开发中的API构建和使用方式。它允许客户端按需请求数据,减少冗余,提升性能。本文概述了GraphQL的核心理念,如声明式查询、强类型和统一入口,并讨论了Java开发者常遇问题:过度查询、Schema设计和安全性。解决方案包括使用Dataloader、优化Schema和实现授权机制。通过理解原理、关注性能、重视安全和持续实践,开发者能更好地利用GraphQL构建高效API。
26 2
|
24天前
|
机器学习/深度学习 Java 开发者
Python vs. Java:语言之争的终结
【6月更文挑战第8天】Python与Java,两种影响力巨大的编程语言,各有千秋。Python以简洁语法和强大库支持在数据科学、机器学习领域大放异彩,适合快速原型设计;而Java以其稳定性能、跨平台兼容性在大型系统、企业应用中占据一席之地。语言之争实为互补,开发者应根据项目需求选择合适工具,两者和谐共存,共同推动编程技术进步。
|
25天前
|
存储 设计模式 Java
Java语言中反射动态代理接口的解释与演示
Java语言中反射动态代理接口的解释与演示
16 1