Java基础---Java语言概述

1、Java简介

Java之父James Gosling团队在开发”Green”项目时,发现C缺少垃圾回收系统,还有可移植的安全性、分布程序设计和多线程功能。最后,他们想要一种易于移植到各种设备上的平台。

Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言、C++语言完全相同。但同时,Java是一个纯粹的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。JDK1.5又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱

2、Java简史

1991年Green项目,开发语言最初命名为Oak (橡树)

1994年,开发组意识到Oak 非常适合于互联网

1996年,发布JDK 1.0,约8.3万个网页应用Java技术来制作1997年,发布JDK 1.1,

JavaOne会议召开,创当时全球同类会议规模之最

1998年,发布JDK 1.2,同年发布企业平台J2EE

1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技术诞生

2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0

2005年,J2SE -> JavaSE,J2EE -> JavaEE,J2ME -> JavaME

2009年,Oracle公司收购SUN,交易价格74亿美元2011年,发布JDK 7.0

2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本

2017年,发布JDK 9.0,最大限度实现模块化

2018年3月,发布JDK 10.0,版本号也称为18.3

2018年9月,发布JDK 11.0,版本号也称为18.9

在这里插入图片描述

3、Java技术体系平台

JavaSE(Java Standard Edition)标准版

支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE

JavaEE(Java Enterprise Edition)企业版

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

Java ME(Java Micro Edition)小型版

支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME

Java Card

支持一些Java小程序(Applets)运行在小内存设备(如智能卡)上的平台

4、Java语言的特点

特点一:面向对象

	两个基本概念:类、对象
	三大特性:封装、继承、多态

特点二:健壮性

	吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与
释放等),提供了一个相对安全的内存管理和访问机制

特点三:跨平台性

	跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run    Anywhere”
	
	原理:只要在需要运行java 应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual 
Machine) 即可。由JVM来负责Java程序在该系统中的运行。

在这里插入图片描述

5、运行机制及运行过程

1、核心机制—Java虚拟机

JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。对于不同的平台,有不同的虚拟机。只有某平台提供了对应的java虚拟机,java程序才可在此平台运行Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
在这里插入图片描述
在这里插入图片描述
2、核心机制—垃圾回收

不再使用的内存空间应回收——垃圾回收。

	在C/C++等语言中,由程序员负责回收无用内存。Java 语言消除了程序员回收无用内存空间的责
	任:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释
	放的存储空间。

垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。

Java程序还会出现内存泄漏和内存溢出问题吗?Yes!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值