Java基础知识总结(1)
Java概况
JavaSE是java分类中的标准版,是刚接触java要学习的基础知识。
JavaEE是java分类中的企业版,是java中的高级,涉及到的知识广泛。
JavaME中M是Micro的缩写,用在嵌入式等电子设备中。
Java软件工程师:通过Java编程语言开发软件
Dos命令的使用
win+r ->>cmd
- exit 退出当前Dos命令窗口 - cls 清屏 -DOS 窗口中的内容怎样复制?在DOS窗口的任意位置,点击鼠标右键,然后选择标记,接下来选中要复制的内容,在DOS窗口的任意位置点击鼠标右键,此时被复制的内容已经到剪切板了。在需要粘贴的位置粘贴即可。 -dir 列出当前目录的所有子文件 -cd 命令表示:change directory(改变目录)*cd命令怎么用呢?cd目录的路径*但是路径包括绝对路径和相对路径绝对路径:表示该路径从某个磁盘的盘符下作为出发点的路径相对路径:表示该路径从当前所在的路径下作为出发点的路径(绝对路径任何人都能找到,但相对路径需要一定的条件)*假设是这样写的 cd C:\Users\123\Desktop其中C:\Users\123\Desktop路径就是一个绝对路径 -cd ..回到上一级目录 -cd\直接回到根目录 -怎样切换盘符 1.c:2.d:3.e:
数字匹配符 \D
\D 可以配置非数字,等价于上一节 中的 0-9
2.java语言的发展史
*Java语言诞生于1995年
*其实在1995年之前SUN公司(太阳微电子公司:公司为Oracle(甲骨文:做数据库的)收购了)为了占据智能电子消费产品市场,派James Gosing领导团队开发了一个Oak语言。
*1996年:JDK1.0诞生
--什么是JDK?
Java开发工具包,该工具包需要从官网下载。
目前SUN被Oracle收购了,所以下载需要去Oracle官网下载。 Oracle | Cloud Applications and Cloud Platform
*目前JDK最高版本是:Java8/JDK1.8/JDK8
*Java包括三大块:
-JavaSE(Java标准版)
-JavaEE(Java企业版)
-JavaME(Java微型版)
3.Java语言特性
*简单性:
相对而言的。例如Java不再支持多继承,C++是支持多继承的,多继承比较复杂
C++中有指针,Java中屏蔽了指针的概念。
所以相对而言,Java是简单的
Java语言底层是C++实现的,不是C语言。
*面向对象:
Java是纯面向对象的。更符合人的思维模式。更容易理解。
*可移植性(跨平台性)
一次编译,到处运行。Java程序可以在windows操作系统上运行,不做任何修改,同样的Java程序可以直接放到Liunx操作系统上运行。这个被称为Java程序的可移植性,或者叫跨平台性。
windows操作系统内核和Linux操作系统的内核肯定不同,他们这两个操作系统执行指令的方式也不一样。
Java程序运行在JVM虚拟机(windows版本的虚拟机和Liunx版本的Java虚拟机)上实现跨平台
*多线程
*健壮性
和自动垃圾回收机制有关,自动垃圾回收机制简称GC机制。
Java语言运行过程中产生的垃圾是自动回收的,不需要程序员关心。
*安全性
4.Java的开发与执行
*Java程序的运行包括两个重要的阶段
1.编译阶段:
xxx.java(源代码)-----编译---->xxx.class(字节码文件)
编译阶段主要的任务是检查Java源文件是否符合Java语法,符合Java语法则能够生成正常的字节码文件(.class),不符合Java语法则无法生成字节码文件。
-字节码文件不是纯粹的二进制,无法在操作系统中直接执行。
-编译阶段的过程:
*程序员需要在硬盘的某个位置上新建一个.java扩展名的文件。
该文件被称为Java源文件,源文件当中编写的是Java源代码/源程序。这个源文件必须符合Java语法规则
*Java程序员需要使用JDK当中自带的javac.exe命令进行java程序的编译
javac.exe怎么用呢?在哪用呢?
-javac的使用规则:
javac java源文件的路径
-在DOS命令窗口中运行
javac是一个java编译器工具/命令。
*Java源文件可以编译生成多个.class文件
字节码文件(.class)文件是最终要执行的文件,所以说class文件的生成之后,java源文件的删除并不会印象java程序的执行。但是一般java源程序不要删除,因为class文件的执行效果可能不是我们想要的,可以回头再修改java源程序,再次编译生成新的class文件。
*编译结束后,可以将class文件拷贝到其他操作系统中运行
2.执行阶段(可以在其他操作系统中跨平台)
-JDK安装之后,除了自带一个java从.exe之外,还另外一个可执行文件叫做java.exe java.exe主要负责运行阶段。
-java.exe主要在DOS窗口中使用
-java.exe怎么用呢?
java 类名(千万要注意,不要写成 java A.class)
-
运行阶段的过程:
*打开DOS命令窗口
*输入:Java A
*java.exe命令会启动java虚拟机(JAM),JAM会启动类加载器ClassLoader
*ClassLoader会去硬件上搜索A.class文件,找到该文件则将该字节码文件装载到JVM当中。
*JVM将A.class字节码文件解释成二进制(如,101010)的数据。
*然后操作系统执行二进制和底层硬件平台进行交互。
5.开始第一个Java程序
5.1保证计算机当中有文本编辑器
5.2安装了Java开发工具包
----JRE (Java运行环境)
5.3JDK JRE JVM的关系
5.4开发HelloWorld.java源程序
5.5将HelloWorld.java源程序通过javac工具进行编译:
#首先需要解决的问题javac命令是否可用
#打开DOS命令窗口,直接输入javac,然后回车,出现如下:‘javac’不是内部或外部命令,也不是可运行的程序或批处理文件。出现以上问题是因为:windows操作系统无法找到javac命令文件。
# windows是如何搜索硬盘上某个命令的呢?
*首先会从当前目录下搜索
*当前目录中搜索不到的话,会从环境变量path指定的路径当中搜索某个命令。
*如果都不是则报错。
#怎样解决以上问题? ---配置系统变量
5.6 javac命令怎么用?
javac java源文件路径
注意:路径包括相对路径和绝对路径,都可以。
5.7运行java程序
#需要使用java.exe
#首先检测java命令受否可用
#使用方法:
java类名
硬盘上有HelloWorld.class,那么类名就是:HelloWorld
java HelloWorld
*一定要注意:java命令后面跟的不是文件路径,是一个类的名字。
#然后直接执行:java HelloWorld
*注意:路径中".."表示上一级路径,”.“表示当前路径
相关文章:
Java基础知识总结(1)
Java概况 JavaSE是java分类中的标准版,是刚接触java要学习的基础知识。 JavaEE是java分类中的企业版,是java中的高级,涉及到的知识广泛。 JavaME中M是Micro的缩写,用在嵌入式等电子设备中。 Java软件工程师:通过Ja…...
脚手架原理之webpack处理html文件和模块打包
脚手架原理之webpack处理html文件和模块打包 为了更好的理解项目脚手架的使用,我们来学习一下webpack工具,因为脚手架的底层就是基于webpack工具实现的。 安装 webpack工具是基于nodejs的,所以首先要有nodejs环境,其次需要下载…...
Winform编程详解一:Form窗口
一、属性介绍 1. (Name) 窗体的对象标识符ID 2. Text 修改窗口左上角标题 3. Icon 修改窗口左上角图标,图标最合适大小 32*32 4. 修改窗体第一次出现位置 代码修改:StartPosition System.Windows.Forms.FormStartPosition.CenterScreen; 5…...
Windows Server 2025 Install Preview
前言 Windows Server 2025 带来了巨大的发展,例如面向所有人的热补丁、下一代 Active Directory 和 SMB、关键任务数据和存储、Hyper-V 和 AI 等 Windows Server 2025 Preview download 下载 已注册的预览体验成员可以直接导航到 Windows Server Insider Preview 下载页面。…...
四、MySQL
MySQL MySQL1.初识网站2.安装MySQL2.1 下载(最重要的一点是路径中不能有中文,哪怕是同级目录也不行)2.2安装补丁2.3安装2.4创建配置文件2.5初始化 3.启动MySQL4.连接测试4.1 设置密码4.2 查看已有的文件夹(数据库)4.3 …...
C#使用泛型自定义的方法设计队列CQueue<T>类
目录 一、涉及到的知识点 1.C#中的队列类 2.自定义队列的方法 (1)先设计一个CList<T>类 (2)再设计CQueue<T>类 二、自定义队列CQueue<T>类的实例 一、涉及到的知识点 1.C#中的队列类 在C#中实现队列类&a…...
IDEA自定义Maven仓库
Maven 是一款广泛应用于 Java 开发的工具,其作用类似于一个全自动的 JAR 包管理器,能够方便地导入开发所需的相关 JAR 包。在使用 Maven 进行 Java 程序开发时,开发者能够极大地提高开发效率。以下是关于如何安装 Maven 以及在 IDEA 中配置自…...
Codeql复现CVE-2018-11776学习笔记
基本使用 1、首先下载struts2漏洞版本源码: https://codeload.github.com/apache/struts/zip/refs/tags/STRUTS_2_3_20 2、构建codeql数据库(构建失败文末有解决办法): codeql database create ~/CodeQL/databases/struts2-2.3.…...
CVE-2024-27199 JetBrains TeamCity 身份验证绕过漏洞2
漏洞简介 TeamCity Web 服务器中发现了第二个身份验证绕过漏洞。这种身份验证旁路允许在没有身份验证的情况下访问有限数量的经过身份验证的端点。未经身份验证的攻击者可以利用此漏洞修改服务器上有限数量的系统设置,并泄露服务器上有限数量的敏感信息。 项目官网…...
ms office学习记录12:Excel学习记录㈥
数据工具 分列的其他运用:身份证号中“出生日期”切片:分列→固定宽度→下一步→切割出三列→下一步→不导入第一列→导入第二列且转换成日期→不导入第三列→完成 删除重复值:定位到要“数据”选项卡→删除重复项→取消全选再勾选要删除的…...
基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的条形码二维码检测系统(深度学习+UI界面+训练数据集+Python代码)
摘要:在物流和制造业中,开发一套高效的条形码与二维码识别系统显得尤为关键。本博文深入探讨了如何利用深度学习技术打造出一套先进的条形码及二维码检测系统,并且提供了一套完整的实施方案。该系统搭载了性能卓越的YOLOv8算法,并…...
npm yarn 一起使用报错
项目记录,具有独特性,仅供参考 项目好好的运行,前一天装个测试工具包, 突然就不行了,卸载重装也不行,所有的项目都安装失败,新起一个项目也不行,有时候某个单独安装一个包可以&…...
基于springboot实现驾校信息管理系统项目【项目源码+论文说明】计算机毕业设计
基于springboot实现驾校信息管理系统演示 摘要 随着人们生活水平的不断提高,出行方式多样化,也以私家车为主,那么既然私家车的需求不断增长,那么基于驾校的考核管理也就不断增强,那么业务系统也就慢慢的随之加大。信息…...
DXP软件界面显示“No Hard Devices”【简单的操作问题】加【软件下载】
目录 一,DXP软件界面显示“No Hard Devices” 二,软件下载的百度网盘资源 一,DXP软件界面显示“No Hard Devices” Protel DXP是2004是澳大利亚Altium公司于2002年推出的一款电子设计自动化软件。它的主要功能包括:原理图编辑、印…...
通过Spring Boot 实现页面配置生成动态接口?
流程介绍 在Spring Boot中实现页面配置生成动态接口通常涉及几个关键步骤: 设计页面配置:首先,你需要设计一个用户界面(UI),允许用户通过此界面来配置接口的各种参数,例如HTTP方法(GET、POST等)、URL路径、请求参数、响应数据格式等。保存配置信息:当用户通过页面配置…...
【数据结构与算法】:插入排序与希尔排序
🔥个人主页: Quitecoder 🔥专栏: 数据结构与算法 欢迎大家来到初阶数据结构的最后一小节:排序 目录 1.排序的基本概念与分类1.1什么是排序的稳定性?1.2内排序与外排序内排序外排序 2.插入排序2.1实现插入排序2.3稳定性…...
前端性能优化——javascript
优化处理: 讲javascript脚本文件放到body标记的后面 减少页面当中所包含的script标记的数量 课堂练习: 脚本优化处理 使用原生JavaScript完成操作过程。 document.querySelector document.querySelectorAll classList以及类的操作API Element.class…...
Docker容器化技术(使用Docker搭建论坛)
第一步:删除容器镜像文件 [rootlocalhost ~]# docker rm -f docker ps -aq b09ee6438986 e0fe8ebf3ba1第二步:使用docker拉取数据库 [rootlocalhost ~]# docker run -d --name db mysql:5.7 02a4e5bfffdc81cb6403985fe4cd6acb0c5fab0b19edf9f5b8274783…...
C# ListView 控件使用
1.基本设置 listView1.Columns.Add("序号", 60); //向 listView1控件中添加1列 同时设置列名称和宽度listView1.Columns.Add("温度", 100); //下同listView1.Columns.Add("偏移", 100);listView1.Columns.Add("分割", 50);listView1…...
【string一些函数用法的补充】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 string类对象的修改操作 我们来看 c_str 返回c格式的字符串的操作: 我们来看 rfind 和 substr 的操作: string类非成员函数 我们来看 r…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
