Java基础--阳光总在风雨后,请相信彩虹
1、今日任务
- JAVA SE-韩顺平视频教程–30p以上(今天得50p以上因为是基础)
- 计算机基础八股记忆总结
- 刷题(两题)可以先用python
1、SSM
ssm->Spring(轻量级的文本开发框架)/SpringMVC(分层的web开发框架)/MyBatis(持久化框架)
2、什么是程序
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
3、java之父gosling
4、1995年java第一个版本发布
5、java技术体系平台
- Java SE标准版(支持面向桌面级应用的Java平台,提供了完整的Java核心API)
- Java EE企业版(是为开发企业环境下的应用程序提供的一套解决方案,主要针对于Web应用程序开发)
- Java Me小型版(支持Java程序运行在移动终端上的平台,对Java API 有所精简,并加入了针对移动终端的支持)
6、Java重要特点
- Java语言是面向对象的(oop)
- Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证
- Java语言是跨平台性的。(即一个编译好的.class文件可以在多个系统下运行)

- Java语言是解释型的
解释性语言:Javascript,PHP,java 编译性语言:c/c++
区别是:解释型语言,编译后的代码,不能直接被机器执行,需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,c/c++
7、Java运行机制及运行过程

- Java核心机制-Java虚拟机[JVM java virtual machine]
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器、包含在JDK中
- 对于不同的平台,有不同的虚拟机
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

8、什么是JDK,JRE
- JDK基本介绍
- JDK的全称(Java Development Kit Java开发工具包)JDK = JRE + java的开发工具[java,javac,javadoc,javap等]
- JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用单独安装JRE了
- JRE基本介绍
- JRE(Java Runtime Environment Java 运行环境)JRE = JVM + Java的核心类库[类]
- 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机只需要安装JRE即可
- JDK、JRE和JVM的包含关系
- JDK = JRE + 开发工具集 (例如Javac,Java编译工具等)
- JRE = JVM + Java SE 标准类库(Java核心类库)
- 如果只想运行开发好的.class文件 只需要JRE
9、配置环境变量path
- 配置环境变量path的步骤
- 我的电脑–属性–高级系统设置–环境变量
- 增加JAVA_HOME环境变量,指向jdk的安装目录
- 编辑path环境变量,增加%JAVA_HOME%\bin
- 打开DOS命令行,任意目录下敲入javac/java,如果出现javac的参数信息,配置成功
- 用户变量和系统变量差不多只不过前者只适用于当前用户,后者适用于全部用户
10、Java快速入门
//这是java快速入门,演示java的开发步骤
//对代码的相关说明
//1、public class Hello 表示Hello是一个类,是一个public的类(公有)
//2、Hello{}表示一个类的开始和结束
//3、public static void main(String[] args) 表示一个主方法,即我们程序的入口
//4、main(){}表示方法的开始和结束
//5、System.out.println("hello,world~");表示输出"hello,world"到屏幕上
//6、; 表示语句结束
public class Hello {//编写一个main方法public static void main(String[] args) {System.out.println("亦向枫 is studying java!");}
}
文件有中文时,如何处理
在文件->设置文件编码->GBK 需要重新保存即可
运行就是将对应的.class文件(字节码文件)装载到对应的虚拟机上运行(.java文件就是源文件)
什么是编译:
1、有了java文件,通过编译器将其编译成JVM可以识别的字节码文件
2、在该源文件目录下,通过javac编译工具对Hello.java文件进行编译。本质就是将.class装载到JVM机执行
3、如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,该文件称为字节码文件,也是可以执行的java的程序
11、Java开发注意事项和细节说明
- java源文件以.java为拓展名。源文件的基本组成部分是类(class),如本类中的Hello类
- Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void mian (String[] args) {…}
- java语言严格区分大小写。
- Java方法由一条条语句构成,每个语句以";"结束
- 大括号都是成对出现的,缺一不可。[习惯,先写{}再写代码]
- 一个源文件中最多只能有一个public类,其他类的个数不限。(编译后,每一个类,都对应一个.class)
- 如果源文件中包含一个public类,则文件名必须按该类名命名
- 一个源文件中最多只能有一个public类。其他类的个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法
12、Java转义字符
- \t:一个制表位,实现对齐的功能
- \n:换行符
- \ \ :一个\
- \ ":一个“
- \ ‘ :一个’
- \ r :一个回车 System.out.println(“亦向枫\r加油”);
//演示转义字符的使用
public class ChangeChar {//编写一个main方法public static void main(String[] args) {System.out.println("亦向枫\t刘妍汐");System.out.println("亦向枫\n刘妍汐");System.out.println("亦向枫\\刘妍汐");System.out.println("亦向枫\"刘妍汐\"");System.out.println("亦向枫\'刘妍汐\'");System.out.println("亦向枫加油\r刘妍汐");//解读//1、输出:亦向枫//2、\r表示回车//光标回到最前面并开始打印,结果为:刘妍汐加油System.out.println("亦向枫加油\r\n刘妍汐加油");}
}
结果为:亦向枫 刘妍汐
亦向枫
刘妍汐
亦向枫\刘妍汐
亦向枫"刘妍汐"
亦向枫'刘妍汐'
刘妍汐加油
亦向枫加油
刘妍汐加油
练习:
要求:请使用一句输出语句,达到输入如下图像的效果

public class ChangeChar {//编写一个main方法public static void main(String[] args) {System.out.println("书名\t作者\t价格\t销量\n三国\t罗贯中\t120\t1000");}
}
13、初学Java易犯错误
- 找不到文件(解决方法:源文件名不存在或者写错,或者当前路径错误)
- 主类名和文件名不一致(解决办法:声明为public的主类应与文件名一致,否则编译失败)
- 缺少分号(解决方法:编译失败,注意错误出现的行数,再到源代码中指定位置改错)

14、Java中的注释类型
- 单行注释(//注释文字)
- 多行注释(/* 注释文字 */)
- 文档注释
使用细节:
- 被注释的文字不会被JVM(Java虚拟机)解释执行
- 多行注释里面不允许有多行注释嵌套
文档注释:注释内容可以被JDK提供的工具javadoc工具所解析,生成一套以网页形式体现的该程序的说明文档的文档注释
Javadoc -d 文件夹名 -xx -yy 源文件名
javadoc 标签
javadoc 工具软件识别以下标签:
| 标签 | 描述 | 示例 |
|---|---|---|
| @author | 标识一个类的作者 | @author description |
| @deprecated | 指名一个过期的类或成员 | @deprecated description |
| {@docRoot} | 指明当前文档根目录的路径 | Directory Path |
| @exception | 标志一个类抛出的异常 | @exception exception-name explanatio |
| {@inheritDoc} | 从直接父类继承的注释 | Inherits a comment from the immediate surperclass. |
| {@link} | 插入一个到另一个主题的链接 | {@link name text} |
| {@linkplain} | 插入一个到另一个主题的链接,但是该链接显示纯文本字体 | Inserts an in-line link to another topic. |
| @param | 说明一个方法的参数 | @param parameter-name explanation |
| @return | 说明返回值类型 | @return explanation |
| @see | 指定一个到另一个主题的链接 | @see anchor |
| @serial | 说明一个序列化属性 | @serial description |
| @serialData | 说明通过writeObject( ) 和 writeExternal( )方法写的数据 | @serialData description |
| @serialField | 说明一个ObjectStreamField组件 | @serialField name type description |
| @since | 标记当引入一个特定的变化时 | @since release |
| @throws | 和 @exception标签一样. | The @throws tag has the same meaning as the @exception tag. |
| {@value} | 显示常量的值,该常量必须是static属性。 | Displays the value of a constant, which must be a static field. |
| @version | 指定类的版本 | @version info |
15、Java代码规范
- 类、方法的注释,要以javadoc的方式来写。
- 非Java Doc的注释,往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
- 使用tab操作,实现缩进,默认整体向右边移动,用shift+tab整体向左移
- 运算符和 = 两边习惯性各加一个空格。比如:2 + 5 * 4 + 345 - 89
- 源文件使用utf-8编码
- 行宽度不要超过80个字符
- 代码编写次行风格和行尾风格

2、今日总结
- 任务总结
- 刷题一道但是等于没刷都没有总结也没有多看看
- Java基础学习看视频做笔记学习到不到30p进度太慢了
- 面试题晚上才准备看
- 明日规划
- Java基础学习看视频做笔记—30p及以上
- 刷题至少一道并做好总结
- 面试题至少一道或者是一篇面试题博客(做好笔记)
相关文章:
Java基础--阳光总在风雨后,请相信彩虹
1、今日任务 JAVA SE-韩顺平视频教程–30p以上(今天得50p以上因为是基础)计算机基础八股记忆总结刷题(两题)可以先用python 1、SSM ssm->Spring(轻量级的文本开发框架)/SpringMVC(分层的w…...
高级网络调试技巧:使用Charles Proxy捕获和修改HTTP/HTTPS请求
今天我将与大家分享一种强大的网络调试技巧,那就是使用Charles Proxy来捕获和修改HTTP/HTTPS请求。如果您是一位开发人员或者网络调试爱好者,那么这个工具肯定对您有着很大的帮助。接下来,让我们一起来学习如何使用Charles Proxy进行高级网络…...
Discuz大气游戏风格模板/仿lol英雄联盟游戏DZ游戏模板GBK
Discuz大气游戏风格模板,lol英雄联盟游戏模板,DZ游戏娱乐模板GBK。模板名称:lol英雄联盟游戏(m0398_lol) 下载地址:https://bbs.csdn.net/topics/617408069...
206、SpringBoot 整合 RabbitMQ 的自动配置类 和 对应的属性处理类 的知识点
目录 ★ Spring Boot 为 RabbitMQ 提供的自动配置▲ 自动配置类:RabbitAutoConfiguration▲ 属性处理类:RabbitProperties相关配置 ★ AmqpAdmin的方法★ AmqpTemplate的方法代码演示创建一个springboot的项目。application.properties 配置属性 ★ Spri…...
网络链接失败怀疑是服务器处于非正常状态?如何用本地电脑查看服务器是否正常?
网络链接失败怀疑是服务器处于非正常状态?如何用本地电脑查看服务器是否正常? 网页会出现链接失败,可以实时用cdm大法,cdm可以更好的排查字节数据的返回,可以让我们更好的要检查服务器是否处于正常状态,接下…...
文件操作(打开关闭文件、文件顺序以及随机读写)
文章目录 写在前面1. 文件的打开与关闭1.1 文件指针1.2 文件的打开(fopen)与关闭(fclose)1.2.1 fopen函数1.2.2 fclose函数 2. 文件的顺序读写2.1. fgetc 和 fputc函数2.1.1 fputc函数2.1.2 fgetc函数 2.2 fgets 和 fputs函数2.2.1 fputs函数2.2.2 fgets函数 2.3 fscanf和fprin…...
HTTP 响应头 X-Frame-Options
简介 X-Frame-Options HTTP 响应头用来给浏览器一个指示。该指示的作用为:是否允许页面在 <frame>, </iframe> 或者 <object> 中展现。 网站可以使用此功能,来确保自己网站的内容没有被嵌套到别人的网站中去,也从而避免了…...
MongoDB 集群配置
一、副本集 Replica Sets 1.1 简介 MongoDB 中的副本集(Replica Set)是一组维护相同数据集的 mongod 服务。 副本集可提供冗余和高可用性,是所有生产部署的基础。 也可以说,副本集类似于有自动故障恢复功能的主从集群。通俗的讲就…...
random生成随机数的灵活运用
random返回的 [0,1) 之间的一个随即小数 思考:请写出获取 a-b 之间的一个随机整数,a,b均为整数,比如 a2 , b7 即返回一个数 x > [2,7]Math.random()*(b-a) 返回的就是 [0,b-a](int)(aMath.random()*(b-a1)) 》 (int)(2Math.random()*6) Ma…...
宏定义实现二进制数的奇偶位交换
思路分析 通过宏定义来实现二进制数的奇偶位交换,如果一个个遍历交换的话,那得算到猴年马月,这是我在网上看到的一个思路: 我们将每一位(整数在计算机里存储是4字节,32位)二进制数的奇数位保留…...
【ELK 使用指南】ELK + Filebeat 分布式日志管理平台部署
ELK和EFLK 一、前言1.1 日志分析的作用1.2 需要收集的日志1.3 完整日志系统的基本特征 二、ELK概述2.1 ELK简介2.2 为什么要用ELK?2.3 ELK的组件 三、ELK组件详解3.1 Logstash3.1.1 简介3.1.2 Logstash命令常用选项3.1.3 Logstash 的输入和输出流3.1.4 Logstash配置文件 3.2 E…...
传输层 | UDP协议、TCP协议
之前讲过的http与https都是应用层协议,当应用层协议将报文构建好之后就要将报文往下层传输层进行传递,而传输层就是负责将数据能够从发送端传到接收端。 再谈端口号 端口号(port)标识了一个主机上进行通信的不同的应用程序,在TCP/IP协议中&…...
Webmin(CVE-2019-15107)远程命令执行漏洞复现
漏洞编号 CVE-2019-15107 webmin介绍 什么是webmin Webmin是目前功能最强大的基于Web的Unix系统管理工具。管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作http://www.webmin.com/Webmin 是一个用 Perl 编写的基于浏览器的管理应用程序。是一个基于Web的界面…...
嵌入式实时操作系统的设计与开发 (前后台系统)
前后台结构 前后台系统也称为中断驱动系统,其软件结构的显著特点是运行的程序有前台和后台之分。 在后台,一组程序按照轮询方式访问CPU;在前台,当用户的请求到达时,首先向CPU触发中断,然后将该请求转交给后…...
Macos数字音乐库:Elsten Software Bliss for Mac
Elsten Software Bliss for Mac是一款优秀的音乐管理软件,它可以帮助用户自动化整理和标记数字音乐库,同时可以自动识别音乐信息并添加标签和元数据。 此外,Bliss还可以修复音乐库中的问题,例如重复的音乐文件和缺失的专辑封面等…...
基于SpringBoot的校园周边美食探索及分享平台的设计与实现
文章目录 项目介绍主要功能截图:登录注册个人信息管理后台首页轮播图管理美食鉴赏我的好友管理我的收藏管理用户管理部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给…...
GPT-4V的图片识别和分析能力
GPT-4V是OpenAI开发的大型语言模型,是GPT-4的升级版本。GPT-4V在以下几个方面进行了改进: 模型规模更大:GPT-4V的参数量达到了1.37T,是GPT-4的10倍。训练数据更丰富:GPT-4V的训练数据包括了1.56T的文本和代码数据。算…...
蓝桥杯(等差素数列,C++)
思路: 1、因为找的是长度为10,且公差最小的等差素数列,直接用枚举即可。 2、枚举用三重循环,第一重枚举首项,第二重枚举公差,第三重因为首项算一个,所以枚举九个等差素数。 代码:…...
Ceph 中的写入放大
新钛云服已累计为您分享769篇技术干货 介绍 Ceph 是一个开源的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。 Ceph 独一无二地在一个统一的系统中同时提供了对象、块、和文件存储功能。 Ceph 消除了对系统单一中心节点的依赖,实现了无中…...
Mabatis-puls强于Mybatis的地方
Mabatis-puls与Mybatis都是优秀的Java持久化框架,但是Mabatis-puls相较于Mybatis有以下几个方面的优势: 性能更优:Mabatis-puls采用了Javassist技术,使得它在运行时比Mybatis更快速,尤其是在执行大量SQL的情况下&#…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?
FTP(File Transfer Protocol)本身是一个基于 TCP 的协议,理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况,主要原因包括: ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...
