java语言概述、java语言特性、java语言发展史、java语言作用
Java介绍:
Java语言概述:
Java语言是由美国Sun(Stanford University Network)斯坦福网络公司的java语言之父–詹姆斯·高斯林,在1995年推出的高级的编程语言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。Java 可运行于多个平台,如 Windows, Mac OS 及其他多种 UNIX 版本的系统。
Java分为三个体系:
- JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版)
- JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版)
- JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)。
2005 年 6 月,JavaOne 大会召开,SUN 公司公开 Java SE 6。此时,Java 的各种版本已经更名,以取消其中的数字 “2”:J2EE 更名为 Java EE,J2SE 更名为Java SE,J2ME 更名为 Java ME。
Java语言特性:
简单性:Java 语言的语法与 C 语言和 C++ 语言很接近,使得大多数程序员很容易学习和使用。Java 语言不使用指针,而是引用。并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧。
面向对象性:Java 语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。Java 语言全面支持动态绑定,总之Java语言是一个纯的面向对象程序设计语言。
分布式性:Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括 URL、URLConnection、Socket、ServerSocket 等。Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。
健壮性:Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。
安全性:Java通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让 Java 应用设置安全哨兵。
体系结构中立的:Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件),然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
可移植的:这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。
解释型的:Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
高性能的:与那些解释型的高级脚本语言相比,Java 的确是高性能的。事实上,Java 的运行速度随着 JIT(Just-In-Time)编译器技术的发展越来越接近于 C++。
多线程的: Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(Runnable) 的构造子类将一个实现了 Runnable 接口的对象包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。值得注意的是 Thread 类已经实现了 Runnable 接口,因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java 语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为 synchronized)。
动态的:Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
Java语言的发展史:
1995年Sun公司发布Java 1.0版本(1996年发布正式版)
1997年发布Java 1.1版本
1998年发布Java 1.2版本
2000年发布Java 1.3版本
2002年发布Java 1.4版本
2004年发布Java 5版本
2006年发布Java 6版本
2009年Oracle公司收购Sun公司,并于2011发布Java 7版本
2014年发布Java 8版本
2017年发布Java 9版本
2018年发布Java 10~11版本
2019年发布Java 12~13版本
…
Java语言的作用:
Java语言主要应用在互联网程序的开发领域。常见的互联网程序比如天猫、京东、物流系统、网银系统等,以及服务器后台处理大数据的存储、查询、数据挖掘等也有很多应用。
提示:本文图片等素材来源于网络,若有侵权,请发邮件至邮箱:810665436@qq.com联系笔者删除。
笔者:苦海
java语言概述、java语言特性、java语言发展史、java语言作用相关推荐
- Java基础:01Java语言概述(常见的DOS命令,Java语言的特点、核心机制、环境搭建,HelloWorld,注释,Java API 文档)
Java基础:01Java语言概述 一.常见的DOS命令 二.Java语言的特点 面向对象性 健壮性 跨平台型 三.Java两种核心机制 1. Java虚拟机 2. 垃圾回收 四.Java语言的环境搭 ...
- java三大领域对象,Java面向对象概述和三大特性
Java 是面向对象的高级编程语言,类和对象是 Java 程序的构成核心.围绕着 Java 类和 Java 对象,有三大基本特性:封装是 Java 类的编写规范.继承是类与类之间联系的一种形式.而多态 ...
- 深入理解Java虚拟机(JVM高级特性与最佳实践java虚拟机)的一些知识总结
GC在什么时候对什么做了什么? 要回答这个问题,先了解下GC的发展史.jvm运行时数据区的划分.jvm内存分配策略.jvm垃圾收集算法等知识. 先说下jvm运行时数据的划分,粗暴的分可以分为堆区(He ...
- python语言概述_(一)Python从入门到精通之语言简介
众所周知,B站是一个学习网站
- java 语言概述(零)
2019独角兽企业重金招聘Python工程师标准>>> java 语言概述 1.软件:系统软件 vs 应用软件 2.语言的分类:第一代:机器语言 第二代:汇编语言 第三代:高级语言( ...
- java程序可分为两个基本文件_1 Java语言概述答案
第1章 Java语言概述 一.判断题 1.Java语言是一种解释执行的语言,这个特点是Java语言的一个缺点.(F)2.Java源程序的文件名一定要与文件中某个类的名称一致.(T) 3.Java语言采 ...
- 二级java题型及分值_2016年全国计算机二级java语言程序设计考试大纲
2016年全国计算机二级java语言程序设计考试大纲 2016年3月计算机考试即将在3月26日-29日进行,为了帮助大家顺利通过2016年计算机二级考试,下面百分网小编为大家带来2016年全国计算机二 ...
- 【面向对象】面向对象程序设计测试题1-Java语言的发展与特性测试题
Test1:Java语言的发展与特性测试题 问题 1 Java 是由 Sun Microsystems 公司于 1995 年推出的一门面向对象程序设计语言. 答案: 对 问题 2 自2010年Orac ...
- 第1章 Java语言概述
第1章 Java语言概述 声明 0. Java语言应用场景 1. 软件开发介绍 2. 计算机编程语言介绍 3. Java语言概述 4. Java程序运行机制及运行过程 5. Java的环境搭建 5. ...
最新文章
- mysql远程连接数据库的二种方法_mysql 远程连接数据库的二种方法
- 【C++】37.为什么要使用Lambda表达式
- html 图片展示 3d,CSS3 3D图像显示
- Pytorch(七) --加载数据集
- hadoop1常见配置含义
- beeline安装_hive使用beeline配置远程连接
- ReentrantLock 源码解析
- springboot 指定 logback_Spring Boot日志框架实战解析
- 几种常见的模式识别算法整理和总结
- 小米MIX 解BL锁教程 申请BootLoader解锁教程
- 2021年,某云盘最新版不限速下载工具教程,亲测有效!
- 罗永浩被判为“老赖”最新回应:“卖艺”也要还完债,锤子科技会做下去
- jQuery-动画效果(图片抽奖案例)
- BeautifulSoup 根据输入的公司名称来爬取公司的详细信息(2022-08-24更新版)
- python话费充值_Python 登录移动查询话费
- linux进程异常退出分析,ECS Linux程序异常退出提示“out of memory”的临时解决办法...
- MySQL插入数据时,如果记录不存在则insert,如果存在则update
- skywalking获取traceId(tid)的方式
- (三)SpringCloud实战之openfeign服务调用
- OCR文字识别笔记总结
热门文章
- Java字符流的使用
- python的三个特性_Python3.9的7个特性
- python实例 79,80
- 山东大学 2020级数据库系统 实验二
- python 归并排序算法_python基本算法之实现归并排序(Merge sort)
- C++根据输入日期YYYY-MM-DD判断是否星期几
- pycharm+pyqt5配置
- 数据分析CSV模块的基本使用(以分析复杂的天气情况为例),附完整的Python代码及csv文件详解---数据可视化
- ACdream区域赛指导赛之手速赛系列(2)
- 050666 获取tableview的cell