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…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
PydanticAI快速入门示例
参考链接:https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...
Tauri2学习笔记
教程地址:https://www.bilibili.com/video/BV1Ca411N7mF?spm_id_from333.788.player.switch&vd_source707ec8983cc32e6e065d5496a7f79ee6 官方指引:https://tauri.app/zh-cn/start/ 目前Tauri2的教程视频不多,我按照Tauri1的教程来学习&…...
