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

目录

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


前言

本文主要了解Java语言,有哪些优势,能做什么。Java之父是谁?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语言有大致的了解。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mac版Excel表格中出现E+

相信很多人在使用Excel的时候都遇到过单元格变成###的情况,这是由于单元格列宽不够造成的,只需要增加列宽就可以正常显示。如果你在使用Excel的过程中遇到过出现"E"这种情况,此时不要惊慌,这是Excel自动对很大或很小的数…

Python进阶

文章目录 一、Python进阶:字符和编码1、字符编码的前世今生(1)、字符集概述(2)、几个基本概念(3)、字符编码的起源:ASCLL(4)、字符编码的发展:百家…

c4d云渲染几款好用的云渲染平台

C4D是指Maxon公司所开发的3D建模、动画和渲染软件Cinema 4D。它是一款非常流行的三维图形软件,被广泛用于电影、电视、游戏等领域中的动画制作、视觉效果、建筑可视化、工业设计、广告设计、虚拟现实等方面。其用户界面简单易用,功能丰富,可以…

《交通规划》——最短路分配方法

《交通规划》——最短路分配方法 说明:下面内容,将用python、networkx实现刘博航、杜胜品主编的《交通规划》P198页的例题,主要是实现最短路径分配方法。 1. 题目描述如下: 2. networkx构建网络 import networkx as nx import …

WRF进阶:使用ERA5-land数据驱动WRF/WRF撰写Vtable文件添加气象场

想用WRF模拟地气交换过程,对于WRF的地表数据,尤其是土壤温湿度数据要求便会很大,传统使用ERA5-singledata数据精度也许不足以满足需求,为此,本文尝试使用ERA5-land数据替换驱动WRF。 数据下载 ERA5-land的数据下载与…

springboot第27集:springboot-mvc,WxPay

在数据库中,DISTINCT 关键字用于查询去重后的结果集。它用于从查询结果中去除重复的行,只返回唯一的行。 要使用 DISTINCT 关键字,可以将其放置在 SELECT 关键字之前,指示数据库返回去重后的结果。 请注意,DISTINCT 关…

day07--java高级编程:JDK8的新特性,JDK9的新特性,JDK10的新特性,JDK11的新特性,JDK15的新特性

1 JDK8的其它新特性 说明:一些8中的新特性在,java高级部分学习的同时顺便讲过了。 1.1 JDK8新特性的总体结构 1.2 Java 8新特性简介 1.3 Lambda表达式 1.3.1 出现背景 1.3.2 Lambda表达式的使用举例 package com.atguigu.java1;import org.junit.Tes…

AntDB 企业增强特性介绍——AntDB在线数据扩容关键技术

数据库集群安装完成后,其数据存储容量是预先规划并确定的。随着时间的推移以及业务量的增加,数据库集群中的可用存储空间不断减少,面临数据存储容量扩充的需求。 传统的在线扩容的流程大致如下。 (1)在集群中加入新的 …

数据库迁移 | Oracle数据迁移方案之技术两三点

今年Oracle似乎又火了,火得要下掉,目前中国大概有240数据库企业,在国产信创的大趋势下,一片欣欣向荣,国库之春已然来临。到今天为止,Oracle依旧是市场份额最大的数据库,天下苦秦久矣&#xff0c…

【JVM 监控工具】JVisualVM的使用

文章目录 前言二、启动JVisualVM三、安装插件四、使用 前言 JVisualVM是一个Java虚拟机的监控工具,要是需要对JVM的性能进行监控可以使用这个工具哦 使用这个工具,你就可以监控到java虚拟机的gc过程了 那么,这么强大的工具怎么下载呢&…

顶奢好文:3W字,穿透Spring事务原理、源码,至少读10遍

说在前面 在40岁老架构师 尼恩的读者社区(50)中,最近有小伙伴拿到了一线互联网企业如阿里、美团、极兔、有赞、希音的面试资格,Spring事务源码的面试题,经常遇到: (1) spring什么情况下进行事务回滚? (2) spring 事务…

Transformer在CV领域有可能替代CNN吗?

目前已经有基于Transformer在三大图像问题上的应用:分类(ViT),检测(DETR)和分割(SETR),并且都取得了不错的效果。那么未来,Transformer有可能替换CNN吗&#…

索尼RSV视频修复方法论视频文件修复时样本文件的三同

索尼RSV类的文件修复案例有很多,程序操作也很简单没什么可说的,这次这个索尼ILCE-7SM3的案例就是为了让大家更好的认识视频修复中我称之为“三同“的重要性,想要恢复的效果好必须要把准备工作做到位。 故障文件:45.1G RSV文件 故障现象: 索…

工具篇--4 消息中间件-RabbitMq 模型介绍

1 介绍: RabbitMQ 是一个开源的消息中间件,它实现了 AMQP(高级消息队列协议)标准,并且支持多种语言和操作系统,包括 Java、Python、Ruby、PHP、.NET、MacOS、Windows、Linux 等等。RabbitMQ 提供了可靠的消息传递机制…

竞赛无人机搭积木式编程(三)---用户自定义航点自动飞行功能(全局定位,指哪打哪)

竞赛无人机搭积木式编程(三)---用户自定义航点自动飞行功能(全局定位,指哪打哪) 无名小哥 2023年6月10日 用户通过对前面两讲中全国大学生电子设计竞赛真题植保无人机(2021)、送货无人机&#…

【UE 从零开始制作坦克】2-控制坦克移动(简单的移动效果)

效果 步骤 1. 新建蓝图类,父类选择“VehicleWheel(载具车轮)” 这里就命名为“TankWheel” 双击打开“TankWheel”,设置形状半径为40 2. 打开 “BP_West_Tank_M1A1Abrams” 选中“网格体(VehicleMesh)&…

JMeter参数化4种实现方式

目录 前言: 1 参数化释义 2 参数化实现 CSV实例 注意事项 前言: 在使用JMeter进行测试时,参数化允许您模拟不同的用户、不同的数据、不同的操作等,从而增加了测试的灵活性和复用性 1 参数化释义 什么是参数化?…

设计模式(十八):行为型之观察者模式

设计模式系列文章 设计模式(一):创建型之单例模式 设计模式(二、三):创建型之工厂方法和抽象工厂模式 设计模式(四):创建型之原型模式 设计模式(五):创建型之建造者模式 设计模式(六):结构型之代理模式 设计模式…

分布式数据库HBase

大数据基础-分布式数据库HBase 概述HBase简介HBase与传统关系数据库的对比分析 HBase数据模型数据模型概述数据模型相关概念数据坐标 HBase的实现原理HBase功能组件表和RegionRegion的定位HBase框架结构HMasterRegionServerHBase协作组件RegionColumnFamilyKeyValue小结 HBase运…

STM32单片机(六)TIM定时器 -> 第二节:TIM定时中断练习(定时器定时中断和定时器外部时钟)

❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要…