day01_Java概述丶环境搭建

前置知识

什么是计算机语言?

  • 计算机语言就是人与计算机之间进行信息交流沟通的一种特殊语言。所谓计算机编程语言,就是人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。

Java语言概述

  • 是美国Sun公司(Stanford University Network)在1995年推出的计算机语言。姆斯·高斯林被我们称之为Java之父。2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可找到Java的相关资料。

为什么用Java?

  • Java是世界上最流行的编程语言之一,在国内使用最为广泛的编程语言。 
  • 可移植性、安全可靠、性能较好。
  • 开发社区完善,功能丰富

Java能做什么?

java语言的三个版本:

  • JavaSE:Java技术的核心和基础,是学习Java EE,JavaME的基础,也是我们近期重点学习的 技术。支持开发桌面级应用(如Windows下的应用程序)的Java平台

  • JavaME:用于嵌入式消费类电子设备。是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,现在移动终端基本上都是使用Android和IOS的技术平台了。

  • JavaEE: 为开发企业环境下的应用程序提供的一套解决方案,主要针对于Web应用程序开发。Java语言主要应用在互联网程序的开发领域。常见的互联网程序比如天猫、京东、物流系统、网银系统等,以及服务器后台处理大数据的存储、查询、数据挖掘等也有很多应用。

JAVA语言的主要特点 

  • Java语言是强制面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
  • Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
  • 跨平台任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。
  • 安全:Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。

Java语言中的相关名词

  • JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java 最具吸引力的特性之一。我们编写的Java代码,都运行在 JVM 之上。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。
  • ​​​​​JRE(Java Runtime Environment) :是Java程序的运行时环境,包含 JVM 和运行时所需要的 核心类库 。我们想要运行一个已有的Java程序,那么只需安装 JRE 即可。
  • JDK(Java Development Kit):是Java程序开发工具包,包含 JRE 和开发人员使用的工具。我们想要开发一个全新的Java程序,那么必须安装 JDK 。必须有JDK才能开发Jva程序

 总结:必须安装JDK才能使用Java语言它包含了java的运行环境和虚拟机。三者关系: JDK > JRE > JVM如下图所示

如何获取JDK 

  • 去Oracle官网下载JDKJava Downloads | Oracle

JDK提供了编译和执行Java程序的工具

Java语言跨平台原理

如图所示,Java的虚拟机本身不具备跨平台功能的,每个操作系统下都有不同版本的虚拟机。

如何验证JDK是否安装成功

  • 进入JDK安装目录,在bin目录下打开,命令行窗口中直接输入javac –version 及 java –version分别看版本提示,如果版本提示都是自己安装 的版本号,则代表JDK环境搭建成功。

tips:如果配置了环境变量,则可以在任意位置打开命令行窗口输入javac –version 及 java –version,如下图所示:

 计算机怎么理解Java写好的这些指令的?

  • Java程序并非是直接运行的,Java编译器将Java源程序编译成与平台无关的字节码文件(class文件),然后由Java虚拟机(JVM)对字节码文件解释执行。

 所以在不同的操作系统下,只需安装不同的Java虚拟机即可实现java程序的跨平台 下面对JDK的版本做一个简单的说明

Java开发环境搭建

  • 第一步:JDK下载,通过官方网站获取JDK http://www.oracle.com。具体下载步骤请参见百度。针对不同的操作系统,需要下载对应版本的JDK。
  • 第二步:安装,下一步即可。但默认的安装路径是在C:\Program Files下,为方便统一管理建议修改安装路径,将与开发相关的软件都安装到一个目录下,例如:D:\develop。或者 E:\develop。安装路径不要包含中文或者空格等特殊字符(使用纯英文目录)

 JDK的安装目录介绍如下图所示:

  • 第三步:JAVA_HOME环境变量的配置。为了开发方便,我们想在任意的目录下都可以使用JDK的开发工具,则必须要配置环境变量,配置环境变量的意义在于告诉操作系统,我们使用的JDK开发工具在哪个目录下。具体步骤请参见百度
  • 第四部:验证环境变量的配置是否配置成功。进入DOS操作界面,输入java -version后回车,下面会显示已安装的JDK版本信息则代表安装成功。

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

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

相关文章

LabVIEW对多个同一类型控件进行操作

LabVIEW对多个同一类型控件进行操作 有时候LabVIEW要多多个同一类的控件进行操作,如对tab中某个page中所有String控件设为dissable。就可以用如下的方式。className是获取不同类型的控件。通过类型选择,可以选择所有的String控件,并可对特定…

1. eulerAngles函数

对线性代数库Eigen3中eulerAngles函数的理解_qingtian11112的博客-CSDN博客作用: 将旋转矩阵转换为欧拉角 Vector3f ea mat.eulerAngles(2, 0, 2); // 等价于 mat AngleAxisf(ea[0], Vector3f::UnitZ())* AngleAxisf(ea[1], Vector3f::UnitX())* AngleAxisf(ea[…

高性能渲染——详解Html Canvas的优势与性能

本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 一、什么是Canvas 想必学习前端的同学们对Canvas 都不陌生,它是 HTML5 新增的“画布”元素&#x…

uniapp黑马优购

配置tabbar 使用 npm install escook/request-miniprogram 进行http请求 挂载到 uni.$http 上 uniapp小程序分包 访问的时候 携带分包目录 /subpkg/goods_detail/goods_detail git分支使用 # 创建并使用分支 git checkout -b home git commit # 推送到远程的home分支…

Redis与Mysql的数据一致性(双写一致性)

双写一致性:当修改了数据库的数据也要同时的更新缓存的数据,使缓存和数据库的数据要保持一致。 一般是在写数据的时候添加延迟双删的策略 先删缓存 再修改数据 延迟一段时间后再次删除缓存 这种方式其实不是很靠谱 一致性要求高 共享锁:读…

Python笔记——pyChram连接linux子系统,使用linux下的Python进行编译

Python笔记——pyChram连接linux子系统,使用linux下的Python进行编译 Linux子系统安装与配置安装前准备安装Linux子系统安装Python3.8配置pyCharm 最近要跑的实验里,python有个机器学习的库windows环境下是没有的,在linux环境下有。虚拟机又不…

蓝桥杯每日一题2023.11.2

题目描述 等差素数列 - 蓝桥云课 (lanqiao.cn) 题目分析 对于此题我们需要求出最小的公差并且长度为10, 1.确保序列开始为素数 2.确定枚举的个数 注意:序列中数只是d的变化,可以通过此计算将开始数字后9个数字都计算出来,d是…

spring解决后端显示时区的问题

spring解决后端显示时区的问题 出现的问题: 数据库中的数据: 解决方法 spring:jackson:date-format: yyyy-MM-dd HH:mm:sstime-zone: Asia/Shanghai

C语言KR圣经笔记 2.11条件表达式 2.12优先级和求值顺序

2.11条件表达式 if (a > b) z a; else z b; 上面的语句计算 a 和 b 中的最大值并存入 z。而使用三元操作符 ? : 的条件表达式,为这个结构及类似结构提供了另一种写法。在如下表达式 expr1 ? expr2 : expr3 中,首先对 expr1 求值。如果值非0 …

[论文笔记]RetroMAE

引言 RetroMAE,中文题目为 通过掩码自编码器预训练面向检索的语言模型。 尽管现在已经在许多重要的自然语言处理任务上进行了预训练,但对于密集检索来说,仍然需要探索有效的预训练策略。 本篇工作,作者提出RetroMAE,一个新的基于掩码自编码器(Masked Auto-Encoder,MAE)…

mathtype最新7.4.10.53绿色版本下载

MathType,一款功能强大的数学公式编辑器,一直深受广大用户的喜爱,给很多的理科生和各位学者、教研机构等带来巨大帮助。 软件的主要使用用户为初中、高中以及大学的学生、老师,理工科专业工作者,可用于编辑数学试卷、…

HTML和CSS的基础-前端扫盲

想要写出一个网页,就需要学习前端开发(写网页代码)和后端开发(服务器代码)。 对于前端的要求,我们不需要了解很深,仅仅需要做到扫盲的程度就可以了。 写前端,主要用到的有&#xf…

加速软件开发和交付的革命性方法-DevOps

“ 随着信息技术的快速发展,现代软件开发和交付已经经历了巨大的变革。DevOps(Development和Operations的结合)已经成为这一变革的关键推动力,让开发团队和运维团队之间的界限变得模糊,以加速软件的开发、测试和部署过…

Django开发使用DRF框架之创建纯净版框架步骤

使用Django开发时,遇到前后端分离的项目,需要创建一个纯净版的Django框架,在使用restframework框架时,有些Django自带的功能或者说是APP用不到,那需要怎么设置呢,需要解决哪些问题,请见下面的详…

第三届iEnglish全国ETP大赛决赛即将启动

如今,寓教于乐的学习方式越来越受到家长和孩子的欢迎,“玩中学”成为一种既能培养兴趣又有助于孩子成长的学习趋势。 以“玩转英语,用iEnglish”为活动主题的第三届全国ETP大赛即将于本周五(11月3日)迎来总决赛的抽签仪式。据主办方iEnglish智能英语学习解决方案相关负责人称,…

【设计模式】第10节:结构型模式之“组合模式”

一、简介 组合模式:将一组对象组织成树形结构,将单个对象和组合对象都看做树中的节点,以统一处理逻辑,并且它利用树形结构的特点,递归地处理每个子树,依次简化代码实现。使用组合模式的前提在于&#xff0…

Scan2BIM实战:从3D扫描到BIM模型生成

最近,我被问过很多次这个问题,所以我想我会尽力传达答案。 我应该指出,以下是概述,而不是非常详细的分步过程。 有很多因素会决定这项工作; 详细程度、扫描设备、点云配准软件和 CAD 软件等。 由于不知道你可能拥有或感…

分享一下微信小程序里怎么开店

如何在微信小程序中成功开店:从选品到运营的全方位指南 一、引言 随着微信小程序的日益普及,越来越多的人开始尝试在微信小程序中开设自己的店铺。微信小程序具有便捷、易用、即用即走等特点,使得开店门槛大大降低。本文将详细介绍如何在微…

中考倒计时7个月复习攻略:名师支招,为“长跑”积蓄能量

今天是2023年11月2日,距离2024年中考还有7个月多一点的时间。其实据六分成长了解,很多学校到了初三(九年级)基本上都是奔着中考考试复习的,这一学年基本上是长跑、拉力赛,拼的不只是智力,还有体…

记一次大数据事故@用了很久的虚拟机环境突然不能联网了

记一次大数据事故用了很久的虚拟机环境突然不能联网了 背景 今天打开自己电脑上的虚拟机环境打算练习一下flink,结果发现vmware里虚拟机能正常开机,也能正常进图os,但是就是不能ping通主机,主机也不能ping通虚拟机 探查 1、…