【Java基础学习打卡07】Java语言概述

news2024/11/25 18:51:25

目录

  • 引言
  • 一、Java语言
    • 1.Java语言简介
    • 2.Java语言优势
    • 3.Java能做什么?
  • 二、Java之父
  • 三、Java简史
    • 1.Java版本时间线
    • 2.Java发展重要节点
  • 总结


引言


一、Java语言

1.Java语言简介

Java语言是一种以面向对象为基础的高级编程语言。吸收了C++语言的各种优点,又摒弃了C++中难以理解的多继承、指针等概念。Java语言被广泛应用于企业级开发、Web应用程序开发、Android移动应用程序开发和大型数据处理等领域。

2.Java语言优势

Java语言具有诸多优势:

  • 简单易学:Java语言的语法与C语言和C++语言很接近,又摒弃了难以理解的概念。
  • 面向对象:Java语言一开始就设计为面向对象语言,提供了丰富的面向对象机制,比如封装、继承和多态等。
  • 可移植性:Java代码可在不同的平台上编写和运行,只要目标平台上有Java虚拟机(JVM)。
  • 高效性:Java代码的编译器可以将其转换为字节码,这可以大大降低代码的执行时间。
  • 大量的库:Java平台提供了大量的类和库,支持各种应用程序的开发,例如Swing和JavaFX框架用于图形用户界面设计。
  • 支持网络编程:Java语言诞生本身就是为简化网络编程设计的。
  • 支持多线程:多线程机制使应用程序在同一时间并行执行多项任务。
  • 健壮性:Java语言是强类型语言,有异常处理、垃圾自动收集等机制。
  • 安全性:Java语言具有内置的安全性特征,如数组越界检查、类型检查等,可用于确保网络应用程序的安全性。

3.Java能做什么?

其实我们更加关心Java能做什么?

  • 企业级应用程序开发:Java EE框架可用于开发各种企业级应用程序,如分布式系统、Web应用程序、电子商务系统等。
  • 移动应用程序开发:Java语言广泛用于Android移动应用程序开发,Android操作系统是基于Java语言和Dalvik虚拟机构建的,Java语言也成为了Android系统开发的主要语言之一。
  • 大数据处理:Hadoop是一个开源的分布式系统框架,使用Java语言编写,可用于大规模数据的存储和处理。Hadoop框架被广泛应用于大型数据分析环境,如科学研究、商业分析等领域。
  • 金融和交易:Java语言应用广泛于金融交易和交易所系统的开发,因为Java的高效性和安全性使其非常适合于这种严格的环境中。
  • 云计算:Java语言在云计算领域也得到了广泛应用,例如很多云计算解决方案如IBM的Liberty、Oracle的WebLogic等都是基于Java语言。
  • 游戏开发:Java语言在游戏开发领域也有着一定的应用,例如Minecraft就是一款由Java编写的游戏。Java的高效性和大量类库使其非常适合用于开发游戏。
  • 桌面应用程序开发:Java语言可以用于开发跨平台的桌面应用程序,例如JavaFX和Swing就是专注于桌面界面的Java库。
  • 自动化测试:Java语言广泛用于自动化测试中,例如Selenium就是一款基于Java语言的Web自动化测试工具。
  • 人工智能和机器学习:Java语言在人工智能和机器学习领域也有一定应用,例如Java中的Weka库,是一种常用的机器学习框架,同时也可以进行自然语言处理的开发。
  • IoT和嵌入式系统:Java语言也可以用于IoT智能设备和嵌入式系统的开发,例如Raspberry Pi和Arduino就是一些常用的嵌入式系统的平台。

二、Java之父

在这里插入图片描述
詹姆斯·高斯林 (James Gosling) 是一名软件专家,1955年5月19日出生于加拿大,在1991年加入Sun公司,之后 James Gosling 领导开发了Java编程语言,一般公认他为 “Java之父”

在Java的不断发展演进过程中,James Gosling 也始终对Java语言的发展起到了重要的推动作用。他对Java语言的一些关键特性的设计和实现贡献了很多,如面向对象、跨平台性、垃圾回收机制、多线程等。

James Gosling 有着制定Java语言规范的重要地位,并且在Java社区中有着广泛的影响力。他还曾在Sun公司、Oracle公司等公司担任高级技术职位,多次荣获荣誉和奖项。

三、Java简史

1.Java版本时间线

在这里插入图片描述

2.Java发展重要节点

  • Sun公司在1995年推出Java语言,不久成为了互联网最热门的语言。
  • 1996年初发布Java 1.0,包含运行环境(JRE)和开发环境(JDK)。
  • 1998年底发布Java 1.2,是Java历史上最重要的版本。新增了JSP/Servlet、EJB等规范,并将Java分为J2ME、J2SE和J2EE三个版本。
    • J2ME:用于控制移动设备和信息家电等有限存储的设备。
    • J2SE:是Java技术的核心和基础,是J2ME和J2EE编程基础。
    • J2EE:提供了企业应用开发相关解决方案。
  • 2002年发布Java 1.4,是Java历史上最成熟的版本。期间涌现出大量基于Java的开源框架和应用服务器。
  • 2004年发布Java 1.5,Sun公司将Java1.5改名为JavaSE5.0、JavaME和JavaEE。版本增加了泛型、增强for循环、可变数量形参、注释、自动拆箱和装箱等功能。
  • 2007年Google推出一款基于Linux平台的开源手机操作系统:Android。Android使用Java语言来开发应用程序。
  • 2009年Oracle宣布收购Sun公司,交易总价值74亿美元。
  • 2011年Oracle发布了Java 7,新增了二进制整数、支持字符串的switch语句、菱形语法等。
  • 2014年发布了Java 8,新增了Lambda表达式、流式编程等新特性。也是目前大部分公司使用的Java稳定版本。
  • 2018年9月发布Java 11,Java 11是Java 8之后第一个长期支持(LTS)的版本。也是目前开发者要尽快过渡的一个版本。

总结

通过文本介绍,对Java语言有大致的了解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/647681.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【IMX6ULL驱动开发学习】06.APP与驱动程序传输数据+自动创建设备节点(hello驱动)

一、APP与驱动之间传输数据 /*驱动从APP获取数据*/ unsigned long copy_from_user(void *to, const void *from, unsigned long n)/*驱动传输数据到APP*/ unsigned long copy_to_user(void *to, const void *from, unsigned long n)二、使用copy_to_user、copy_from_user在AP…

32908字长文理解Large CV Model:Segment Anything

作者:猛码Memmat 目录 Abstract1. IntroductionTaskModelData engineDatasetResponsible AIExperimentsRelease 2. Segment Anything TaskTaskPre-trainingZero-shot transferRelated tasksDiscussion 3. Segment Anything ModelImage encoderPrompt encoderMask de…

十个实用MySQL函数

函数 0. 显示当前时间 命令:。 作用: 显示当前时间。 应用场景: 创建时间,修改时间等默认值。 例子: 1. 字符长度 命令:。 作用: 显示指定字符长度。 应用场景: 查看字符长度时。 例子: 2. 日期格式化 命令…

【群智能算法改进】一种改进的白鲸优化算法 改进白鲸优化算法 改进后的EBWO[1]算法【Matlab代码#40】

文章目录 【获取资源请见文章第5节:资源获取】1. 原始BWO算法2. 改进的白鲸优化算法EBWO2.1 Logistic映射2.2 透镜成像折射方向学习 3. 部分代码展示4. 仿真结果展示5. 资源获取 【获取资源请见文章第5节:资源获取】 1. 原始BWO算法 白鲸优化算法 (BWO&…

LeetCode —— 206. 反转链表

LeetCode —— 206. 反转链表 一、题目描述: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head …

【Shiro】第二章 Shiro概述

目录 1、Shiro简介 2、核心组件 1、Shiro简介 【1】什么是Shiro? Shiro是apache旗下一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框…

华为OD机试真题 JavaScript 实现【租车骑绿道】【2023Q1 100分】

一、题目描述 部门组织绿岛骑行团建活动,租用公共双人自行车骑行,每辆自行车最多坐两人、最大载重 M。 给出部门每个人的体重,请问最多需要租用多少双人自行车。 二、输入描述 第一行两个数字 m、n,自行车限重 m,代…

管理类联考——逻辑——技巧篇——论说文模块

正论模块 一直为社会、企业所重视。正是因为___让我们在应对挑战中超越自我,形成了一种保持可持续发展的能力与定力,涵养了自强不息、卧薪尝胆的品质,弥补了心智和能力的短板。古今中外这样的事例比比皆是/正如__所言“__”(事实证据或引典)…

Mybatis学习之插件

Mybatis学习之插件 Plugins Mybatis中的插件虽然名称叫插件,但实质上是通过动态代理实现的。和我们平时讲的插件概念不一样,但是本质上都是给外部提供接口进行扩展。 MyBatis 允许我们在映射语句执行过程中的某一点进行拦截调用。MyBatis允许我们使用…

【C/C++】引用()的概念和用法

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

推荐几款可以大幅提高开发效率的vscode插件

1、Vue 2 Snippets 这是一款基于vue2的代码片段提示插件&#xff0c;特别好用&#xff0c;可以有效的提高我们的编码速度。 他的能力非常强大&#xff0c;具体还需要我们去看他的文档文档地址 &#xff0c;解锁更多能力。 2、Path Autocomplete 这是一款路劲提示插件 vscod…

计算机网络实验第一课:HTTP和DNS

实验准备 1.先安装好wireshark 2.开启抓包&#xff0c;然后用过滤器选中http。 3.输入http://gaia.cs.umass.edu 网址&#xff0c;摁下回车键。&#xff08;这里我做实验的时候出了点意外&#xff0c;我一开始开着梯子&#xff0c;然后一直都是通过代理访问的网页&#xff…

Spring Security Oauth2.1 最新版 1.1.0 整合 (基于 springboot 3.1.0)gateway 完成授权认证

目录 背景 版本 Spring Boot 3.1 Spring Authorization Server 1.1.0官方文档 基础 spring security OAuth2.0 模块构成 授权方式 集成过程 官方demo 代码集成 依赖 授权服务AuthorizationServerConfig配置 重要组件 测试 查看授权服务配置 访问授权服务 授…

简单实用的快递查询工具,支持批量查询

大家如果遇到快递一直没到的情况&#xff0c;是不是会很心急呢&#xff1f;这时候就要去查询一下快递具体的运输轨迹了&#xff0c;看看自己的快递运输到哪里了。今天小编给大家推荐一款快递信息查询软件&#xff1a;“固乔快递查询助手”&#xff0c;这款软件能够自动识别单号…

管理类联考——英语——知识篇——考研英语熟词生义

考研英语熟词生义 A 1.abandon【生义】放松&#xff0c;沉溺 2.abide【【生义】容忍&#xff0c;经受住 3.abroad【生义】广为流传&#xff0c;传开 4.abrupt【生义】陡峭的&#xff0c;险峻的 5.absent【生义】漫不经心的 6.absolute【【生义】基本的 7.absorb【生义】…

Redis 发布和订阅详细介绍

发布和订阅 发布和订阅是什么 一句话&#xff1a;Redis 发布订阅(pub/sub) 是一种消息通信模式&#xff1a;发送者(pub) 发送消息&#xff0c;订阅者(sub) 接收消息 Redis 客户端可以订阅任意数量的频道 一图胜千言 1、客户端订阅频道示意图 2、当给这个频道发布消息后&am…

[CKA]考试之网络策略NetworkPolicy

由于最新的CKA考试改版&#xff0c;不允许存储书签&#xff0c;本博客致力怎么一步步从官网把答案找到&#xff0c;如何修改把题做对&#xff0c;下面开始我们的 CKA之旅 题目为&#xff1a; Task 在现有的namespace fubar中创建一个名为allow-port-from-namespace的新Netwo…

云原生时代崛起的编程语言Go远程调用gRPC实战

文章目录 概述定义背景特点四种服务方法 实战环境配置proto文件简单RPCToken认证服务器流式RPC客户端流式RPC双向流式RPC 概述 定义 gRPC 官网地址 https://grpc.io/ 源码release最新版本v1.55.1 gRPC 官网文档地址 https://grpc.io/docs/ gRPC 源码地址 https://github.com/g…

【vue3】13-前端路由-Vue-Router的详解: 从入门到掌握

前端路由 前端路由的发展历程认识前端路由&#xff1a;后端路由阶段前后端分离阶段 Vue-Router的使用vue-router的基本使用vue-router的使用过程基本使用的细节补充 路由懒加载分包处理路由的其他属性动态路由路由嵌套路由的编程式导航动态管理路由对象路由导航守卫钩子 前端路…

【毕业N年系列】 毕业第五年

距离上一篇 【毕业N年系列】已经过去一年时间了。没想到自己当初的一个简单的想法竟然能坚持到第五年&#xff0c;希望自己能坚持下去吧&#xff0c;在耄耋古稀之年依然能回看自己的人生。当然本来想着今天能早点下班回来写这篇文章&#xff0c;显然又没有实现&#xff0c;加班…