Java(一)安装并使用 java(Windows)

news2025/2/25 19:17:35

安装并使用java

  • 前言
  • 一、初识Java
    • 1.Java的安装
      • 1.1下载JDK
      • 1.2JDK安装与使用
        • 1.2.1安装
        • 1.2.2 IDEA(编译器)使用
    • 2.Java运行编程逻辑(重要后面要用)
    • 总结

前言

学习很重要,复习也很重要,对于编程语言的复习更为重要。语法是编程的基础。也是逻辑编程(计算机程序编程)诞生的最根本的语言体系。学会了语法了就等于学会了计算机编程的四分之一。剩下的就需要去学习,数据结构与算法,计算机组成原理,与计算机操作系统。这里没有将数据库列入,只要是数据库的语言语法可以是数据结构与算法和编程语言的结合。后面我会在出继续更新相关内容,当然也包括数据库。

编译语言:java

编译环境:Windows

编译器:IDEA


一、初识Java

java是一个面向对象的经典编程语言,Java语法是C++语法的一个“纯净版本”,相当于对C++做了一个减法。(对象的概念将会在下面类和对象中详细说明)

1.Java的安装

学习Java就得先学会在计算机系统上安装java,这里我们选择在Windows上安装,在Linux中安装这里不做解释,详情可以看目录十一。

1.1下载JDK

首先我们去官网下载JDK,现在jdk的版本用的最多的是1.8版本,因为它足够稳定。在实际运用中稳定和安全就是程序的一切。
链接:https://www.java.com/en/download/(官网一般不好进
链接:https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html(文件在最下方,看准参照物8u311

需要登录甲骨文才能下载(嫌麻烦可以直接去我网盘中下载:链接:https://pan.baidu.com/s/1fFAAHYpi7UwBzSuv3bZv3g
提取码:1111)没用可以私信我

在安装前一定要看自己的Windows 系统的类型,我的是64位,右击此电脑或者我的电脑,选择属性就可以看见。

在这里插入图片描述

1.2JDK安装与使用

一般而言,计算机软件我们都不推荐在C盘安装。在C盘安装会影响计算机的运行。但是JAVA特例,我们通常安在C盘,这样使得Java的优先级更高。无需去其他盘访问。(因为我已经安装过1.9了所以只做演示)

1.2.1安装

下一步就可在这里插入图片描述

一定要记住自己安装位置,诺不知道安装路径可以在C盘右上角搜索Java关键字

在这里插入图片描述
在这里插入图片描述
在这里我们就安好了,但是想要进行使用,就必须配置Java相关的环境。我们先去安装的文件夹中找到java的jdk。

可以看见安装后就会出现一个jdk文件夹和jar文件夹
在这里插入图片描述

jre:

jre 是java runtime environment, 是java程序的运行环境。既然是运行,当然要包含jvm,也就是虚拟机,还有所有java类库的class文件,都在lib目录下打包成了jar。在windows上的虚拟机是jre/bin/client里面是一个jvm.dll。

jdk:

jdk 是java development kit,是java的开发工具包,主要是给ide 用的,里面包含了各种类库和工具。当然也包括了另外一个Jre.,而且jdk/jre/bin 里面也有一个server文件夹, server文件夹下面也有一个jvm.dll 虚拟机。(这个虚拟机是什么后,面会涉及)

环境配置

首先用鼠标右键点开我的电脑或者此电脑找到属性,然后在找到高级系统配置

在这里插入图片描述
在这里插入图片描述

系统变量和用户变量的区别

系统变量:是计算机唯一且永久的变量,诺是切换用户,并不会影响计算机关键软件的运行。

用户变量:它会随着你计算机用户的变更而变更,切换用户后诺此用户没有进行相关配置,将无法使用上个用户的软件

所以我们在这里选择计算机系统变量,配置环境。

在这里插入图片描述
在这里插入图片描述
环境一定不能出错不然无法运行java

变量名:JAVA_HOME(记住一定要大写

变量值:C:\Program Files\Java\jdk1.8.0_192
(记住这是我的路径,不是你的路径,要配置成功一定要换成自己的路径

在这里插入图片描述

变量名:classpath(这次要小写

变量值,;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
(你没有看错,最前面%前面有一个英文的逗号和分号

%JAVA_HOME%代表的是jdk的路径

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

到这里基本上配置完毕了,要验证是否配置成功按住Windows健+r弹出运行窗口,输入cmd,弹出DOS命令窗口
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

输入java -version

在这里插入图片描述

显露出这些信息我们就算是将Java安装完毕了,在这里你可以发现我的是1.9版本,这是因为我在配置时配置的是1.9版本,虽然下载的java版本很多但是在环境配置中我配置的是java1.9版本。所以可以看出java版本是互相不干扰的,只要想用哪个,就配置哪个就完事。

自检自己安装的版本就好

1.2.2 IDEA(编译器)使用

我这里用的2022版本,这里请自行下载,作为程序员谁也不希望自己成功被人免费盗用(其实作为学生的话,IDEA是可以免费使用的,前提需要认证,不知道怎么做可以去B站上找教程:链接:https://www.bilibili.com/video/BV19V411k7HD?t=12.2)

安装好后
我们先创建一个项目
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

到这里我们的java编程的基本准备就算完成了

2.Java运行编程逻辑(重要后面要用)

如何执行java文件?
在这里插入图片描述
可以看见在中间的方框中有我圈出了两个按钮。一个是Run(运行),一个是Debug(调试)

Run:再点击后会在你所创建的项目中生成一个class文件(一般这代表着你的代码没有任何问题,可以交付给用户)风险大

Debug:将代码在编译器中进行调试,可以将代码的错误风险在IDEA中调试中降到最低,也可以创建的项目中生成一个class。

他们两个都会生成一个out的IEDA所属的运行文件目录,class文件就会在里面生成,这个class文件叫字节码文件

这个是我没有进行任何操作的项目文件
在这里插入图片描述
我们先做用Debug来调试一下这个java文件。

这个就是我们的运行结果
在这里插入图片描述

我们去他相关的文件夹看一看,可以看见out的文件夹下的子目录下生成了一个class文件
在这里插入图片描述
我们在试试Run,看看是不是会生成一个class文件

可以看出Run和Debug的运行结果一样,但是在窗口出现的字符不同。
Run的结果
在这里插入图片描述

java文件不在ide中运行

在这里插入图片描述
JDK、JRE、JVM之间的关系

JDK:Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。

JRE:Java运行时环境,包含了JVM,Java基础类库。是使用Java语言编写程序运行的所需环境。

JVM:Java虚拟机,运行Java代码

总结

  1. 源文件名后缀是.java
  2. 类名与文件名不一致(编译器会报错)
  3. main方法名字写错:mian(主方法就只有一个)
  4. 类没有使用public修饰(为什么后面会说)
  5. 方法中语句没有以分号结尾(重要,而且所有字符必须用英文输入法)
  6. 中文格式的分号
  7. JDK环境没有配置好,操作系统不能识别javac或者java命令

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

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

相关文章

初试小程序轮播组件

文章目录 一、轮播组件(一)swiper组件1、功能描述2、属性说明 (二)swiper-item组件1、功能描述2、属性说明 二、案例演示(一)运行效果(二)实现步骤1、创建小程序项目2、准备图片素材…

Azure + React + ASP.NET Core 项目笔记一:项目环境搭建(二)

有意义的标题 pnpm 安装umi4 脚手架搭建打包语句变更Visual Studio调试Azure 设置变更发布 pnpm 安装 参考官网,或者直接使用npm安装 npm install -g pnpmumi4 脚手架搭建 我这里用的umi4,官网已附上 这里需要把clientapp清空,之后 cd Cl…

构建普适通用的企业网络安全体系框架

在当今数字化时代,网络安全已成为企业保护信息资产和业务运行的重要任务。恶意攻击、数据泄露、网络病毒等威胁不断演进,给企业和个人带来了巨大风险。为了应对这一挑战,许多企业已经采取了一系列网络安全措施,如制定了网络安全政…

Nacos:Spring Cloud Alibaba服务注册与配置中心

Nacos 英文全称为 Dynamic Naming and Configuration Service,是一个由阿里巴巴团队使用 Java 语言开发的开源项目。 Nacos 是一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理平台(参考自 Nacos 官网)。 Nacos 的命名是由 3 部…

系统架构设计师(第二版)学习笔记----嵌入式系统及软件

【原文链接】系统架构设计师(第二版)学习笔记----嵌入式系统及软件 文章目录 一、嵌入式系统1.1 嵌入式系统的组成1.2 嵌入式系统的特点1.3 嵌入式系统的分类 二、嵌入式软件2.1 嵌入式系统软件分层2.2 嵌入式软件的主要特点 三、安全攸关软件的安全性设…

ubuntu20.04 Supervisor 开机自启动脚本一文配置

前言: 最近发现一种非常好的开机启动服务方式,不光可以开机自启动,而且还可以进行开机节点的进程守护,这样大大确保了线程的稳定情况,这种服务甚至可以守护开机的进程,所以比之前设置 rc.local 开机自启动脚本一文配置节点好出很多,它甚至可以使用网页登录监管我开机自启…

RabbitMQ: 死信队列

一、在客户端创建方式 1.创建死信交换机 2.创建类生产者队列 3.创建死信队列 其实就是一个普通的队列,绑定号私信交换机,不给ttl,给上匹配的路由,等待交换机发送消息。 二、springboot实现创建类生产者队列 1.在消费者里的…

OpenText EnCase Endpoint Security 识别潜在的网络安全威胁并快速消灭威胁

如今,敏感数据丢失和 IT 系统中断是各类组织面临的最大危机。网络攻击频率不断攀升、修复成本日益增加以及响应时间延长都加剧了数据丢失的隐患。 OpenText EnCase Endpoint Security 的高效体现在能够加速检测恶意活动,并在其导致不可挽回的损失或丢失敏…

SpringSecurity OAuth2 配置 token有效时长

1.这种方式配置之后,并没有生效 package com.enterprise.auth.config;import com.enterprise.auth.handler.OAuthServerWebResponseExceptionTranslator; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bea…

2023国赛数学建模B题思路代码 - 多波束测线问题

# 1 赛题 B 题 多波束测线问题 单波束测深是利用声波在水中的传播特性来测量水体深度的技术。声波在均匀介质中作匀 速直线传播, 在不同界面上产生反射, 利用这一原理,从测量船换能器垂直向海底发射声波信 号,并记录从声波发射到…

java文件命令行报错: 找不到或无法加载主类XXX报错及解决

前言 之前遇到过几次,后面稀里糊涂的解决了。今天详细记录一下,可能不全或有些错误,还请各位指正。 你要启动一个类的话首先要有类。 在这里,类有两种, 一个是带包名(package)的还有一个是没包…

lvs负载均衡、

四:LVS集群部署 lvs给nginx做负载均衡项目 218lvs yum -y install ipvsadm 设置VIP 定义策略 ipvsadm -C //清空现有规则 -A增加虚拟服务器记录 -D删除虚拟服务器记录 -L查看 150web-111 配置好网站服务器,测试所有RS [nginx-stable] namengin…

网络原理(二)TCP的可靠传输

网络原理(一)目录 网络原理应用层传输层先说UDP(不可靠传输)重点说明TCP(可靠传输)一、确认应答二、超时重传三、链接管理建立连接断开链接 四、滑动窗口五、流量控制&am…

性能指标都不了解,如何做性能测试?

1、性能指标在性能测试的作用? 性能指标在性能测试中起着非常重要的作用,它们帮助我们评估和了解系统的性能表现。下面用通俗易懂的话来解释性能指标的作用和意义: 帮助我们了解系统的处理能力:性能指标可以告诉我们系统在给定负…

目标检测评估指标mAP:从Precision,Recall,PR曲线到AP

1. TP, FP, FN, TN True Positive 满足以下三个条件被看做是TP 1. 置信度大于阈值(类别有阈值,IoU判断这个bouding box是否合适也有阈值) 2. 预测类型与标签类型相匹配(类别预测对了) 3. 预测的Bouding Box和Ground …

[react基础]关于v6版本route的变化,以及常见应用模式

该说不说,在做这些之前,你要记得一件事 route不是react或者vue等原本就有的组件!需要你手动下载!然后导入! 原本的框架只是最终挂载到一个html界面上!!! 别再问我为啥你扒下来的代码为啥不好使了! 讨厌 > _< 下载指令去看我另一篇推文 今天复盘了一下自己的实训…

pyCharm远程DEBUG

第一步&#xff0c;添加一个远程机器的解释器 ssh 远程机器解释器添加&#xff0c; 我本地ssh有配置目标机器。 如果没配置&#xff0c;那就选着new server configuration 新增一个。 interpreter 指定远程机器python&#xff0c; &#xff08;机器上有多个版本python里尤其要…

【LeetCode-中等题】22. 括号生成

文章目录 题目方法一&#xff1a;递归&#xff1a;方法二&#xff1a;递归回溯 题目 方法一&#xff1a;递归&#xff1a; 递归入口 空子结果集&#xff0c;左括号数目&#xff08;初始为0&#xff09;&#xff0c;右括号数目&#xff08;初始为0&#xff09; 递归出口 若左括…

Eviews用向量自回归模型VAR实证分析公路交通通车里程与经济发展GDP协整关系时间序列数据和脉冲响应可视化...

全文下载链接&#xff1a;http://tecdat.cn/?p27784 河源市是国务院1988年1月7日批准设立的地级市&#xff0c;为了深入研究河源市公路交通与经济发展的关系&#xff0c;本文选取了1988&#xff0d;2014年河源市建市以来24年的地区生产总值&#xff08;GDP&#xff09;和公路通…

vue 子组件向父组件传递参数 子传父

子组件中写&#xff1a; this.$emit(RowCount,res.data.RowCount); 父组件中写&#xff1a; getMFGLRowCount(val){ //父组件中的方法: 接收子组件传过来的参数值赋值给父组件的变量 //this.totalCount val; alert("这…