Java 基础入门篇(一)——— Java 概述

news2024/10/6 16:25:30

文章目录

  • 一、Java 概述
  • 二、Java 的产品 JDK
    • 2.1 JDK 安装
    • 2.2 Java与 Javac 介绍
    • 2.3 Java 程序的开发步骤
  • 三、Java 程序的执行原理
  • 四、JDK 的组成
  • 五、Java 的跨平台工作原理


一、Java 概述

  Java 是 sun 公司在 1995 年推出的一门计算机高级编程语言,其语言风格接近人类的自然语言,写程序简单易懂。Java 的流行度很高,商业占用率很高,并且有很重要的特性:可移植性。

  Java的技术体系:JavaSE 标准版JavaEE 企业版、JavaME 小型版。标准版,指 Java 技术的核心和基础。企业版,指大型互联网企业级解决方案。小型版,指移动应用的解决方案。


二、Java 的产品 JDK

Java 的 产品是 JDK,又称 Java 开发者工具包,必须安装 JDK 才能使用 Java 语言。


2.1 JDK 安装

Oracle官网下载:https://www.oracle.com/java/technologies/downloads/

环境变量Path的配置:

  • 目前较新的 JDK 安装时会自动配置 javac、java 程序的路径到 Path 环境变量中去,因此 javac、java可以直接使用。(注:老版本的 JDK 没有配置 Path 环境变量,需要自己手动配置)
  • 在环境变量里面设置 JDK 的 bin 目录的地址,JAVA_HOME 是 JDK 所在目录,如:
    在这里插入图片描述
  • JDK 1.8 版本安装参考:jdk1.8的安装与环境变量配置
  • 同时安装两个版本的JDK参考:同时安装两个jdk

验证 JDK 安装成功的方式:
  查询 JDK 的版本号,在 cmd 命令行窗口中分别输入 javac -versionjava -version 看版本提示,如果版本提示与自己安装的版本号一致,则代表 JDK 环境搭建成功。


2.2 Java与 Javac 介绍

在这里插入图片描述
注:Java 程序是高级语言,计算机底层是硬件不能识别这些语言,必须先通过 javac 编译工具进行翻译,然后再通过 java 执行工具执行才可以驱动机器干活。


2.3 Java 程序的开发步骤

编写代码、编译代码、运行代码

在这里插入图片描述
执行 HelloWorld.java 文件,先输入命令 javac HelloWorld.java,再输入命令 java HelloWorld

在这里插入图片描述
注:jdk11 开始支持 java 直接运行源代码文件。


三、Java 程序的执行原理

Java程序最终会翻译,解释成计算机能识别的机器语言:000111…这样的形式驱动机器干活。

补充:BUG,代表程序出现问题或者漏洞的意思;DEBUG,解决问题的意思。


四、JDK 的组成

JVM:虚拟机真正运行 Java 程序的地方
核心类库:Java自己写好的程序,给程序员自己的程序调用的。
JRE:Java的运行环境。
JDK:Java开发工具包,包括上面所有。

在这里插入图片描述

  运行 HelloWorld.java 程序,首先需要通过 javac 开发工具进行编译,然后通过 java 开发工具会将编译后的 class 文件送入 JVM 中,在 JVM 运行的过程中,会调用一些核心类库。


五、Java 的跨平台工作原理

一次编译,处处可用。
在这里插入图片描述


文章参考:Java入门基础视频教程,java零基础自学就选黑马程序员Java入门教程(含Java项目和Java真题)

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

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

相关文章

javaEE+mysql学生竞赛管理系统

本系统是基于JAVA平台开发的一套学生竞赛信息管理的系统。系统采用JSP为编程语言。数据库采用Mysql建立数据之间的转换。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案。 本课题的目的是使…

none模式配置网络操作

基于Docker引擎启动Nginx WEB容器,默认以None方式启动Docker容器,此处使用pipework工具手工给容器指定桥接网卡,并且手工配置IP地址,操作指令如下: #查看镜像列表; docker images#运行新的容器 docker ru…

【Python】【进阶篇】17、如何配置settings.py文件

目录 17、如何配置settings.py文件1) 修改语言与时区配置2) 设置时区不敏感3) 配置项目所需数据库4)学会阅读报错信息 17、如何配置settings.py文件 《settings.py配置文件详解》一文中,将 settings.py 配置文件的每一项给大家做了介绍。在开发的过程中…

MYSQL进阶02

MYSQL进阶02 数据类型char与varchartext与blob浮点数与定点数日期类型的选择 数据类型 char与varchar char和varchar类型类似,都用来存储字符串,但是他们保存和检索的方式不同。char属于固定长度的字符类型,而varchar属于可变长度的字符类型…

JavaWeb学习--RequestResponse

目录 JavaWeb学习--Request&Response 1,Request和Response的概述 request:获取请求数据 response:设置响应数据 **小结** 2,Request对象 **小结** 2.2 Request获取请求数据 **小结** 2.4 请求参数中文乱码问题 URL编码 2.5 Request请求转…

c提高学习——选择排序算法

#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #include <stdlib.h>//选择排序 void mySort(int arr[], int len) {for (int i 0; i < len; i){//认定i是最小值的下标int min i;for (int j i1; j < len; j){if (arr[min…

ABTEST平台建设思路与方案

导读 ABTest的作用&#xff1a; 用ABTEST的结果数据&#xff0c;论证是因为某个业务方案的调整&#xff0c;对产品能力的影响。ABTEST是一个过程&#xff0c;只是为了证明改动的效果&#xff0c;其最终的阶段一定是对某个方案进行推全结束实验&#xff0c;避免稳定的业务流程…

STM32的位带操作

STM32的位带操作 为什么需要位带操作&#xff1f; 因为编程需要操作某个bit位来达到我们想要的功能&#xff0c;比如点灯需要操作GPIOA->ODR 的某个bit假设是第2bit&#xff0c;写1就可以让GPIO输出一个高电平。 GPIOA->ODR | 1<<2;这样写其实有三个隐含的操作…

SpringSecurity-从入门到精通

SpringSecurity从入门到精通 一、简介1.1 官网介绍1.2 认证与授权 二、使用步骤2.1 快速入门2.2 认证流程2.3 相关概念 三、解决问题3.1 思路分析3.2 准备工作3.3 具体实现3.4 加密存储3.5 登录接口3.6 认证过滤器 一、简介 1.1 官网介绍 SpringSecurity 是一个强大且高度自定…

Stable Diffusion-生式AI的新范式

! 扩散模型&#xff08;Stable Diffusion)现在是生成图像的首选模型。由于扩散模型允许我们以提示( prompts)为条件生成图像&#xff0c;我们可以生成我们所选择的图像。在这些文本条件的扩散模型中&#xff0c;稳定扩散模型由于其开源性而最为著名。 在这篇文章中&#xff0…

通用智能的瓶颈及可能的解决途径

通用智能是指能够在各种不同的任务和环境中灵活地适应和执行任务的智能。通用智能与特定任务的智能相反&#xff0c;后者只能在特定领域或任务中表现出色。通用智能的理论基础是人工智能领域的通用人工智能&#xff08;AGI&#xff09;研究&#xff0c;旨在设计出能够像人类一样…

【Java笔试强训 5】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 一、选择题 二、编程题 &#x1f525;统计回文…

Zynq-7000、FMQL45T900的GPIO控制(三)---linux管脚编号计算

本文主要对在Linux下使用zynq-7000或者FMQL45T900控制MIO/EMIO 首先内核配置项 如下&#xff0c;这个不用太多关注&#xff0c;一般都是默认打开的 CONFIG_GPIO_SYSFSy CONFIG_SYSVIPCy CONFIG_GPIO_ZYNQy两者的控制都是流程都是一样的&#xff0c;在细节上又区别 首先都在…

Go | 一分钟掌握Go | 9 - 通道

作者&#xff1a;Mars酱 声明&#xff1a;本文章由Mars酱编写&#xff0c;部分内容来源于网络&#xff0c;如有疑问请联系本人。 转载&#xff1a;欢迎转载&#xff0c;转载前先请联系我&#xff01; 前言 在Java中&#xff0c;多线程之间的通信方式有哪些&#xff1f;记得吗&…

浪潮之巅 OpenAI有可能是历史上第一个10万亿美元的公司

淘金时代很像 如果你那个时候去加州淘金&#xff0c;一大堆人会死掉&#xff0c;但是卖勺子的人、卖铲子的人永远可以赚钱。所谓的shove and pick business。 大模型是平台型机会。按照我们几天的判断&#xff0c;以模型为先的平台&#xff0c;将比以信息为先的平台体量更大。…

带你深入学习k8s--(四) 控制器(k8s核心)

目录 一、概念 1、什么是控制器 2、控制器执行流程 3、控制器类型 二、控制器的使用 1、ReplicaSet 2、Deployment 1、版本迭代 2、回滚 3、修改滚动更新策略 4、暂停与恢复 3、daemonset 4、job 5、cronjob 前言&#xff1a; 上一章我们说到&#xff0c;pod有…

C++——入门基础知识

0.关注博主有更多知识 C知识合集 目录 1.命名空间 1.1命名空间的定义 1.2命名空间的使用 1.3命名空间定义的补充 2.输入与输出 3.缺省参数 3.1全缺省参数 3.2半缺省参数 3.3缺省参数的补充 4.函数重载 4.1C为什么支持函数重载&#xff1f; &#xff15;.引用 5.…

Wine运行器3.2.1——Windows虚拟机模块支持非X86架构

不写太多啥了&#xff0c;详细介绍看这里就行&#xff1a;https://bbs.deepin.org/post/248098 更新内容 ※1、Windows 虚拟机安装工具支持非 X86 架构&#xff1b; ※2、应用打包器可以与星火应用商店配合构建 arm/all 全架构的 Wine 包&#xff1b; ※3、Windows 虚拟机安装…

【MATLAB图像处理实用案例详解(12)】——基于纹理特征的指纹识别方法

目录 一、指纹图像预处理1.1 图像对比度增强1.2 图像二值化1.3 图像滤波 二、指纹图像特征提取 指纹识别系统主要涉及4个步骤&#xff1a;指纹图像采集、图像预处理、特征提取、特征匹配。一开始&#xff0c;通过指纹读取设备取得图像&#xff0c;并对原始图像进行初步处理&…

《斯坦福数据挖掘教程·第三版》读书笔记(英文版) Chapter 2 MapReduce and the New Software Stack

来源&#xff1a;《斯坦福数据挖掘教程第三版》对应的公开英文书和PPT Chapter 2 MapReduce and the New Software Stack Computing cluster means large collections of commodity hardware, including conventional processors (“compute nodes”) connected by Ethernet …