Day01-Java基础语法
目录
1. 人机交互
1.1 什么是cmd?
1.2 如何打开CMD窗口?
1.3 常用CMD命令
1.4 CMD练习
1.5 环境变量
2. Java概述
1.1 Java是什么?
1.2下载和安装
1.2.1 下载
1.2.2 安装
1.2.3 JDK的安装目录介绍
1.3 HelloWorld小案例
2.3.1 Java程序开发运行流程
2.3.2 HelloWorld案例的编写
1.4 HelloWorld案例常见问题
1.4.1 BUG
1.4.2 BUG的解决
1.4.3 HelloWorld常见问题
常见错误代码1:
常见错误代码2:
常见错误代码3:
常见错误代码4:
1.5 环境变量
1.5.1 为什么配置环境变量
1.5.2配置方式
1.5.3win10的bug
1.6 Notepad++
1.6.1下载
1.6.2 安装
1.6.3 设置
1.6.4 练习
1.7 Java语言的发展
1.8 Java的三大平台
1.8.1 JavaSE
1.8.2 JavaME
1.8.3 JavaEE
1.9 Java的主要特性
1.9.1 Java语言跨平台的原理
1.10 JRE和JDK
1. 人机交互
1.1 什么是cmd?
就是在windows操作系统中,利用命令行的方式去操作计算机。
我们可以利用cmd命令去操作计算机,比如:打开文件,打开文件夹,创建文件夹等。
1.2 如何打开CMD窗口?
-
按下快捷键:win + R。
此时会出现运行窗口。
-
在运行窗口中输出cmd
-
输出回车。
解惑:
cmd默认操作C盘下的users文件夹下的XXX文件夹。(XXX就是计算机名)
1.3 常用CMD命令
扩展一个小点:
在很多资料中都说成是DOS命令,其实是不对的。真正的DOS命令是1981年微软和IBM出品的MS-DOS操作系统中的命令才叫做DOS命令。
而在Windows中,win98之前的操作系统是以非图形化的DOS为基础的,可以叫做DOS命令。到了2000年以后,windows逐渐的以图形化界面为主了,这个时候就不能叫DOS命令了,他只是模拟了DOS环境而已,很多的原本的DOS命令已经无法使用了,所以这个时候叫做CMD命令会更准确一些。
常见的CMD命令如下:
操作 | 说明 |
---|---|
盘符名称: | 盘符切换。E:回车,表示切换到E盘。 |
dir | 查看当前路径下的内容。 |
cd 目录 | 进入单级目录。cd itheima |
cd .. | 回退到上一级目录。 |
cd 目录1\目录2... | 进入多级目录。cd itheima\JavaSE |
cd \ | 回退到盘符目录。 |
cls | 清屏。 |
exit | 退出命令提示符窗口。 |
1.4 CMD练习
需求:
利用cmd命令打开自己电脑上的QQ。
完成步骤:
1,确定自己电脑上的QQ安装在哪里 2,启动cmd 3,进入到启动程序QQ.exe所在的路径。 4,输出qq.exe加回车表示启动qq。
解惑:
在windows操作系统当中,文件名或者文件夹名是忽略大小写的。
1.5 环境变量
作用:
如果我想要在CMD的任意目录下,都可以启动某一个软件,那么就可以把这个软件的路径配置到环境变量中的PATH里面。
在启动软件的时候,操作系统会先在当前路径下找,如果在当前录课没有再到环境变量的路径中去找。如果都找不到就提示无法启动。
步骤:
-
右键我的电脑,选择属性。
-
点击左侧的高级系统设置
-
选择高级,再点击下面的环境变量。
-
找系统变量里面的PATH
-
把软件的完整路径,配置到PATH当中就可以了。
-
(可做可不做)就是把自己配置的路径,移动到最上面。
移动的好处:在CMD中打开软件时,会先找当前路径,再找环境变量,在环境变量中是从上往下依次查找的,如果路径放在最上面查找的速度比较快。
2. Java概述
1.1 Java是什么?
语言:人与人交流沟通的表达方式
计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言
Java是一门非常火的计算机语言。(也叫做编程语言)
我们想要让计算机做一些事情,那么就可以通过Java语言告诉计算机就可以了
1.2下载和安装
1.2.1 下载
通过官方网站获取JDK
http://www.oracle.com
注意1:针对不同的操作系统,需要下载对应版本的JDK。
注意2:
如果你的电脑是windows32位的,建议重装系统,重装成64位的操作系统。
因为Java从9版本开始,就已经不提供32位版本的安装包了。
1.2.2 安装
傻瓜式安装,下一步即可。默认的安装路径是在C:\Program Files下。
建议:
-
安装路径不要有中文,不要有空格等一些特殊的符号。
-
以后跟开发相关的所有软件建议都安装在同一个文件夹中,方便管理。
1.2.3 JDK的安装目录介绍
目录名称 | 说明 |
---|---|
bin | 该路径下存放了JDK的各种工具命令。javac和java就放在这个目录。 |
conf | 该路径下存放了JDK的相关配置文件。 |
include | 该路径下存放了一些平台特定的头文件。 |
jmods | 该路径下存放了JDK的各种模块。 |
legal | 该路径下存放了JDK各模块的授权文档。 |
lib | 该路径下存放了JDK工具的一些补充JAR包。 |
1.3 HelloWorld小案例
HelloWorld案例是指在计算机屏幕上输出“HelloWorld”这行文字。各种计算机语言都习惯使用该案例作为第一个演示案例。
2.3.1 Java程序开发运行流程
开发Java程序,需要三个步骤:编写程序,编译程序,运行程序。
2.3.2 HelloWorld案例的编写
-
新建文本文档文件,修改名称为HelloWorld.java。
注意:后缀名为java的才是java文件。
-
用记事本打开HelloWorld.java文件,输写程序内容。
注意:代码要跟我编写的完全保持一致。
public class HelloWorld {public static void main(String[] args) {System.out.println("HelloWorld");} }
-
保存
注意:未保存的文件在左上角会有*符号标记
-
编译文件。编译后会产生一个class文件。
java文件:程序员自己编写的代码。
class文件:交给计算机执行的文件。
-
运行代码
注意:运行的是编译之后的class文件。
用到两个命令:
javac + 文件名 + 后缀名 (就是编译java文件)
java + 文件名(运行编译之后的class文件)
1.4 HelloWorld案例常见问题
1.4.1 BUG
在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题统称为bug(漏洞)。
1.4.2 BUG的解决
-
具备识别BUG的能力:多看
-
具备分析BUG的能力:多思考,多查资料
-
具备解决BUG的能力:多尝试,多总结
1.4.3 HelloWorld常见问题
1、非法字符问题。Java中的符号都是英文格式的。
2、大小写问题。Java语言对大小写敏感(区分大小写)。
3、在系统中显示文件的扩展名,避免出现HelloWorld.java.txt文件。
4、编译命令后的java文件名需要带文件后缀.java
5、运行命令后的class文件名(类名)不带文件后缀.class
...
常见错误代码1:
publicclass HelloWorld{public static void main(String[] args){System.out.println("HelloWorld");} }
问题:
public和class之间缺少一个空格。
技巧:一般来讲在单词之间的空格是不能省略的。
如果是单词和符号之间的空格是可以省略的。
常见错误代码2:
public class HelloWorld{public static void main(String[] args){system.out.println("HelloWorld");} }
问题:
system首字母必须大写。
技巧:
Java代码中,是严格区分大小写的。
所以该大写的地方一定要大写,该小写的地方一定要小写。多多练习。
常见错误代码3:
public class HelloWorld{public static void main(String[] args){System.out.println(HelloWorld);} }
问题:
第三行代码中的HelloWorld必须用双引号引起来,否则就会出现问题。
常见错误代码4:
public class HelloWorld{public static void main(String[] args){System.out.println("HelloWorld");} }
问题:
在以后代码当中,所有的标点符号必须是英文状态下的。
技巧:
可以在输入法中进行对应的设置。
1.5 环境变量
1.5.1 为什么配置环境变量
开发Java程序,需要使用JDK提供的开发工具(比如javac.exe、java.exe等命令),而这些工具在JDK的安装目录的bin目录下,如果不配置环境变量,那么这些命令只可以在bin目录下使用,而我们想要在任意目录下都能使用,所以就要配置环境变量。
注意:现在最新从官网上下载的JDK安装时会自动配置javac、java命令的路径到Path环境变量中去 ,所以javac、java可以直接使用。
1.5.2配置方式
以前下载的老版本的JDK是没有自动配置的,而且自动配置的也只包含了4个工具而已,所以我们需要删掉已经配置完毕的,再次重新配置Path环境变量。
①JAVA_HOME:告诉操作系统JDK安装在了哪个位置(未来其他技术要通过这个找JDK)
②Path:告诉操作系统JDK提供的javac(编译)、java(执行)命令安装到了哪个位置
1.5.3win10的bug
当电脑重启之后,环境变量失效了。表示操作系统不支持自定义的环境变量。
步骤:
-
还是要配置JAVA_HOME给以后的相关软件去使用
-
我们可以把java和javac的完整路径配置到PATH当中。
E:\develop\JDK\bin
1.6 Notepad++
1.6.1下载
打开百度,搜索一下notepad++就可以了。
1.6.2 安装
傻瓜式安装,直接点击下一步就可以了。
对安装路径有两个小建议:
-
路径不要有中文,不要有空格,不要有一些特殊符号
-
建议最好把所有的跟开发相关的软件都放在一起,方便管理。
1.6.3 设置
右键点击java文件,选择edit with notepad++。
点击设置,再点击首选项。在弹出的页面当中,左侧选择新建,中间选择Java,右侧选择ANSI。
1.6.4 练习
利用notepad++去编写一个HelloWorld并能成功编译和运行。
1.7 Java语言的发展
三个版本:
-
Java5.0:这是Java的第一个大版本更新。
-
Java8.0:这个是目前绝大数公司正在使用的版本。因为这个版本最为稳定。
-
Java15.0:这个是我们课程中学习的版本。
解惑:
我们学的跟工作中使用的版本不太一样啊。会不会影响以后工作呢?
向下兼容。新的版本只是在原有的基础上添加了一些新的功能而已。
举例:
用8版本开发的代码,用11版本能运行吗?必须可以的。
用11版本开发的代码,用8版本能运行吗?不一定。
如果11版本开发的代码,没有用到9~11的新特性,那么用8是可以运行的。
如果11版本开发的代码,用到了9~11的新特性,那么用8就无法运行了。
1.8 Java的三大平台
JavaSE、JavaME、JavaEE
1.8.1 JavaSE
是其他两个版本的基础。
1.8.2 JavaME
Java语言的小型版,用于嵌入式消费类电子设备或者小型移动设备的开发。
其中最为主要的还是小型移动设备的开发(手机)。渐渐的没落了,已经被安卓和IOS给替代了。
但是,安卓也是可以用Java来开发的。
1.8.3 JavaEE
用于Web方向的网站开发。(主要从事后台服务器的开发)
在服务器领域,Java是当之无愧的龙头老大。
1.9 Java的主要特性
-
面向对象
-
安全性
-
多线程
-
简单易用
-
开源
-
跨平台
1.9.1 Java语言跨平台的原理
-
操作系统本身其实是不认识Java语言的。
-
但是针对于不同的操作系统,Java提供了不同的虚拟机。
虚拟机会把Java语言翻译成操作系统能看得懂的语言。
1.10 JRE和JDK
JVM(Java Virtual Machine),Java虚拟机
JRE(Java Runtime Environment),Java运行环境,包含了JVM和Java的核心类库(Java API)
JDK(Java Development Kit)称为Java开发工具,包含了JRE和开发工具
总结:我们只需安装JDK即可,它包含了java的运行环境和虚拟机。
相关文章:

Day01-Java基础语法
目录 1. 人机交互 1.1 什么是cmd? 1.2 如何打开CMD窗口? 1.3 常用CMD命令 1.4 CMD练习 1.5 环境变量 2. Java概述 1.1 Java是什么? 1.2下载和安装 1.2.1 下载 1.2.2 安装 1.2.3 JDK的安装目录介绍 1.3 HelloWorld小案例 2.3.1 …...

代码随想录二刷day06
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、力扣242. 有效的字母异位词二、力扣349. 两个数组的交集三、力扣202. 快乐数四、力扣1两数之和 前言 一、力扣242. 有效的字母异位词 class Solution {pub…...

可扩展的Blender插件开发汇总
成熟的 Blender 3D 插件是令人惊奇的事情。作为 Python 和 Blender 的新手,我经常发现自己被社区中的人们创造的强大的东西弄得目瞪口呆。坦率地说,其中一些包看起来有点神奇,当自我怀疑或冒名顶替综合症的唠叨声音被打破时,很容易想到“如果有人能做出可以做xxx的东西就好…...

2023_Spark_实验二:IDEA安装及配置
一、下载安装包 链接:百度网盘 请输入提取码 所在文件夹:大数据必备工具--》开发工具(前端后端)--》后端 下载文件名称:ideaIU-2019.2.3.exe (喜欢新版本也可安装新版本,新旧版本会存在部分差异) IDEA …...

小赢科技,寻找金融科技核心价
如果说金融是经济的晴雨表,是通过改善供给质量以提高经济质量的切入口,那么金融科技公司,就是这一切行动的推手。上半年,社会经济活跃程度提高背后,金融科技公司既是奉献者,也是受益者。 8月29日࿰…...

NAT与代理服务器
1.DNS Domain Name System 是一整套从域名映射到IP的系统(把域名转化为IP地址) 2.域名简介 3.周鸿祎 傅盛 4.ICMP协议 用来网络故障排查原因 草图理解“位置” ping ICMP 是绕过TCP UDP传输协议的,没有端口号 traceroute 5.NAT技术 N…...

24.排序,插入排序,交换排序
目录 一. 插入排序 (1)直接插入排序 (2)折半插入排序 (3)希尔排序 二. 交换排序 (1)冒泡排序 (2)快速排序 排序:将一组杂乱无章的数据按一…...

Navicat16安装教程
注:因版权原因,本文已去除破解相关的文件和内容 1、在本站下载解压后即可获得Navicat16安装包和破解补丁,如图所示 2、双击“navicat160_premium_cs_x64.exe”程序,即可进入安装界面, 3、点击下一步 4、如图所示勾选“…...

【看表情包学Linux】初识文件描述符 | 虚拟文件系统 (VFS) 初探 | 系统传递标记位 | O_TRUNC | O_APPEND
爆笑教程《看表情包学Linux》👈 猛戳订阅! 💭 写在前面:通过上一章节的讲解,想必大家已对文件系统基本的接口有一个简单的了解,本章我们将继续深入讲解,继续学习系统传递标志位&…...

ssm+vue“魅力”繁峙宣传网站源码和论文
ssmvue“魅力”繁峙宣传网站源码和论文102 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身…...

Linux系统编程5(线程概念详解)
线程同进程一样都是OS中非常重要的部分,线程的应用场景非常的广泛,试想我们使用的视频软件,在网络不是很好的情况下,通常会采取下载的方式,现在你很想立即观看,又想下载,于是你点击了下载并且在…...

leetcode645. 错误的集合(java)
错误的集合 题目描述优化空间代码演示 题目描述 难度 - 简单 LC645 - 错误的集合 集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数…...

Pytest参数详解 — 基于命令行模式
1、--collect-only 查看在给定的配置下哪些测试用例会被执行 2、-k 使用表达式来指定希望运行的测试用例。如果测试名是唯一的或者多个测试名的前缀或者后缀相同,可以使用表达式来快速定位,例如: 命令行-k参数.png 3、-m 标记࿰…...

【python爬虫】3.爬虫初体验(BeautifulSoup解析)
文章目录 前言BeautifulSoup是什么BeautifulSoup怎么用解析数据提取数据 对象的变化过程总结 前言 上一关,我们学习了HTML基础知识,知道了HTML是一种用来描述网页的语言,又了解了HTML的基本结构。 认识了HTML中的常见标签和常见属性&#x…...

【Three.js + Vue 构建三维地球-Part One】
Three.js Vue 构建三维地球-Part One Vue 初始化部分Vue-cli 安装初始化 Vue 项目调整目录结构 Three.js 简介Three.js 安装与开始使用 实习的第一个任务是完成一个三维地球的首屏搭建,看了很多的案例,也尝试了用 Echarts 3D地球的模型进行构建…...

Power View
界面 切换可视化效果 对于已经上传到透视表的数据,选择power view,形成表格后。...

SQL查询本年每月的数据
--一、以一行数据的形式,显示本年的12月的数据,本示例以2017年为例,根据统计日期字段判断,计算总和,查询语句如下:selectsum(case when datepart(month,统计日期)1 then 支付金额 else 0 end) as 1月, sum…...

C++之struct和union对比介绍
C之struct和union对比介绍 在C中,struct和union都是用来定义自定义数据类型的关键字,但它们的作用略有不同。 首先了解一下它们的基本概念: struct(结构体):struct 是一个用户自定义的数据类型ÿ…...

微服务--SkayWalking(链路追踪:国产开源框架)
SkayWalking:分布式系统的应用程序性能监视工具 作用:分布式追踪、性能指标分析、应用、服务依赖分析; SkayWalking性能剖析: 我操,能够定位到某一个方法会有多慢。。。 通过Tid查看全局所有的日志信息(…...

在Windows 10上部署ChatGLM2-6B:掌握信息时代的智能对话
在Windows 10上部署ChatGLM2-6B:掌握信息时代的智能对话 硬件环境ChatGLM2-6B的量化模型最低GPU配置说明准备工作ChatGLM2-6B安装部署ChatGLM2-6B运行模式解决问题总结 随着当代科技的快速发展,我们进入了一个数字化时代,其中信息以前所未有的…...

LRU和LFU算法的简单实现
LRU #include <iostream> #include <unordered_map> #include <list> struct Node{int key;int value;Node(int key, int value):key(key),value(value){} }; class LruCache{ private:int maxCapacity;// 最大容量std::list<Node>CacheList;// 缓存链…...

OCR多语言识别模型构建资料收集
OCR多语言识别模型构建 构建多语言识别模型方案 合合,百度,腾讯,阿里这四家的不错 调研多家,发现有两种方案,但是大多数厂商都是将多语言放在一个字典里,构建1w~2W的字典,训练一个可识别多种语…...

倍增的经典题目:扩大区间、st表
1. 扩大区间 P4155 [SCOI2015] 国旗计划例题1:P4155 [SCOI2015] 国旗计划 计算能覆盖整个圆圈的最少区间,题目给定的所有区间互相不包含,按区间左端点排序后,区间的右端点也是单增的。 我们首先需要化圆为线,然后贪…...

LeetCode——和为K的子数组(中等)
题目 给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的连续子数组的个数 。 示例 1: 输入:nums [1,1,1], k 2 输出:2示例 2: 输入:nums [1,2,3], k 3 输出:2 题解 …...

Truncation Sampling as Language Model Desmoothing
本文是LLM系列文章,针对《Truncation Sampling as Language Model Desmoothing》的翻译。 截断采样作为语言模型的去平滑性 摘要1 引言2 背景3 截断作为去平滑性4 方法5 实验与结果6 相关工作7 结论8 不足 摘要 来自神经语言模型的长文本样本可能质量较差。截断采…...

docker安装jenkins
运行jenkins docker run -d \--name jenkins \ --hostname jenkins \-u root \-p 29090:8080 \--restart always \-v D:\springcloud\学习\jekins\jenkins\jks_home:/var/jenkins_home \ jenkins/jenkins获取root登录密码 密码在jekins_home/secrets/initalAdminPassword文件…...

学习pytorch8 土堆说卷积操作
土堆说卷积操作 官网debug torch版本只有nn 没有nn.functional代码执行结果 B站小土堆视频学习笔记 官网 https://pytorch.org/docs/stable/nn.html#convolution-layers 常用torch.nn, nn是对nn.functional的封装,使函数更易用。 卷积核从输入图像左上角…...

pytest自动化测试两种执行环境切换的解决方案
目录 一、痛点分析 方法一:Hook方法pytest_addoption注册命令行参数 1、Hook方法注解 2、使用方法 方法二:使用插件pytest-base-url进行命令行传参 一、痛点分析 在实际企业的项目中,自动化测试的代码往往需要在不同的环境中进行切换&am…...

说说TIME_WAIT和CLOSE_WAIT区别
分析&回答 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接…...

Docker的优势
Docker是一种开源的容器化平台,提供了一种将应用程序、库和其它依赖项封装在容器中的方法。以下是Docker的基本概念和优势: 基本概念: 镜像:一个Docker镜像是一个可运行的软件包,包括应用程序、库和其它依赖项。它是D…...