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…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...

(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...