自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 反射实现tomcat

反射可以看到类的一切信息:类名字(类修饰、类注解),属性域(修饰、类型、名字、注解),方法(修饰符、返回类型、入参数量、入参类型、方法名字)甚至私有属性。一些web知识:war包是一种压缩文件,里面的webinf里有classes,java文件都在这里,也就是src文件里的东西。这里className是存储类名的字符串。xhr是后端,js是js文件,css是css文件,img是图片,media是音频。类加载器是在内存中寻找类加载进内存的,可以自定义,ajax可以定义header。3.通过类名.class。

2023-12-02 16:11:20 712

原创 继承 多态 拆箱装箱 128陷阱 枚举类

/重写equals一定要重写hashcode,因为有一个hashmap结构,需要equals和hashcode配合判断;equals方法比较的是对象是否指向同一个地方,这个方法是object类的方法,所有类都有,比较对象引用是否相等,字符串类型被重写了用来比较值;//hashcode没有规律但是相对均匀,不同的对象的散列码有极小的概率是重复的;在java里一个类只能继承一个类,但可以被多个类继承;枚举类也是一种类,只是限定了对象的个数,构造方法也一定是私有的,不能再创建新的对象。子类可以使用父类的方法;

2023-12-02 16:03:32 780

原创 值和引用的传递与初始化块

在java中只有按值传递没有按引用传递,c语言也只有按值传递,只有c++才有引用传递。值:1.基本类型数据;静态块>块>构造方法。

2023-12-02 15:55:17 424

原创 类和对象 构造器 访问器和更改器 拷贝

当变量设置为私有private变量的时候我们需要使用访问器get和更改器set对其进行操作,这种方法阻止不了任何安全问题,只是多线程的时候用,它本身没有任何安保问题,但是我们可以修改让其实现只读或者只写,比如一个数组,只是给他增加访问器,由于引用类型的特性,这个数组尽管被设为私有类型但是它仍旧可以被修改,但是我们可以new一个数组,这个其实就是深拷贝,拷贝值而不拷贝地址。java申请一个足够大的数组(块),其中有方法区,包含类常量池和静态常量池(被static修饰的部分)2.每个类有一个以上构造器。

2023-12-02 15:14:26 465

原创 程序的存储与运行汇总 方法区 静态常量池 堆 栈 锁

最终的线程是本地方法栈的线程。当修改x2.arr2的时候,这个数组有了新的指向,之前指向的4442被销毁,标记为无效并自动回收。堆中的数据没有被指向的时候就会被回收,但是常量池不会,除非空间实在不够的时候,没有被引用的字符串常量会被删掉。进入就绪态的线程才能被cpu选中执行,每个线程执行一个时间片,执行完就结束,没执行完就保留当前状态等再次执行,不是先进入就绪态先执行。凡是static修饰的,只在常量池中有一份,不被static修饰的在每个对象中都有一份,可以用多线程测试。当上图x1中的值发生改变的时候。

2023-12-02 15:09:11 348

原创 数组的存储方式:一维数组 二维数组 字符串数组

以数组arr=[“aaa",“bbb”,“ccc”,“ddd”]为例子,但改变字符串长度的时候需要重新指向一个新的地址。逻辑上在一起,物理上不在一起。3.字符串数组的存储方式。2.二维数组的存储形式。

2023-12-02 14:51:40 393

原创 两数之和 三数之和 哈希方法

【代码】两数之和 三数之和 哈希方法。

2023-12-02 14:48:04 488 1

原创 JDBC前后端互传 实现对数据库的增删改查

开始->导入驱动->加载并注册驱动->生成connection对象连接数据库->执行sql语句->将数据放入resultset对象->处理resultset得到结果->清空resultset->关闭statment对象->关闭connection对象->结束、jdbc就是这两个部分,一个部分叫做面向应用的程序(应用开发人员关注),一部分叫做面向数据库的程序(驱动数据库开发商编写的)每个数据库底层连接方式并不一定完全相同,servlet提供了一套标准的流程,用来连接不同的数据库的驱动。

2023-11-18 09:30:37 112

原创 前端 交互控制动画效果

/之所以加这个是因为反复点start会变快,但是点stop停不下来,因为之前记录定时器的timer已经被新的timer覆盖了。// 周期计时器 timer=setInterval(函数,间隔(毫秒)) 每隔一定的时间来执行函数。//延迟定时器 timer=setTimeout() 指定时间间隔执行一次函数。// setInterval("fun()",1000) 传参。// clearInterval(timer) 设置定时器。//清除定时器 clearTimeout(timer)

2023-11-18 09:24:56 158

原创 前端 旋转木马

* 原有比例裁剪 */

2023-11-11 22:45:36 77

原创 循环 do while for switch 击穿 break continue 大数值

【代码】循环 do while for switch 击穿 break continue 大数值。

2023-11-08 23:14:56 81

原创 *****解析流

这块涉及到原码反码补码 无符号位移和有符号位移。

2023-11-08 23:14:13 48

原创 string API 格式化输出 文件的输入输出

【代码】string API 格式化输出 文件的输入输出。

2023-11-08 23:12:50 76

原创 前端 长度与位移transform变换 圆角与阴影 水滴动画 五环

长度和位移的实践项目五环挂环。圆角和阴影与项目水滴动画。

2023-11-03 22:56:04 122

原创 java 字符串拼接,截取,重赋值,比较

【代码】java 字符串拼接,截取,重赋值,比较。

2023-10-31 23:08:40 92

原创 前端 过渡动画 帧动画

animation-timing-function 设置动画的时间函数(速度)速度模型其值 ease(由慢到快再到慢) linear(线性匀速的) ease-in(由慢到快) ease-out(由快到慢)animation-iteration-count 设置动画次数。animation-duration 设置动画的持续时间。animation-direction 设置动画的方向。animation-delay 设置动画的延迟时间。animation-name 设置动画的名称。

2023-10-30 23:01:58 80

原创 java 自增自减 与或非异或 位运算

a:b如果表达式正确则a,否则就是b,ab可以是数字,也可以是字符串类型,甚至函数返回值;&&和||是短路的,如果第一个已经可以得知结果不再往下运算。自己等于自增自己是永远不变得。数值之间的类型转换 结合运算符。

2023-10-29 12:18:18 59

原创 前端 河大迎新网的制作

底端<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>

2023-10-28 23:09:38 63

原创 js练习 网页翻页条模拟 表格修改

<td>序号</td><td>姓名</td><td>性别</td><td>操作</td>跳转</div>''<div class="st2">首页</div>'')">上一页

2023-10-27 23:06:30 108

原创 前端 定位position与百度页面模拟

4.结合使用relative和absolute 祖先元素使用relative,当前元素使用absolute,保证当前元素不保留自己原有的物理空间,以使用relative的。1.纯使用 relative 依然保留字节原有的物理空间(比如上移,它下方的元素不会上移占用它的空间),以原有的位置。2.纯使用absolute 不保留自己原有的物理空间(移动之后,其他元素可能会占用它的空间),以浏览器为定位参考点,3.纯使用fixed 不保留自己的物理空间,以浏览器为参考点,不随着浏览器的滚动而滚动。

2023-10-26 23:07:07 75

原创 数据结构2 常见数据结构的增删改查

2.有序数组增加,需要找到插入位置再增加,因此时间复杂度是o(n),**修改操作由于要保证顺序,那么就找到要删的数据删掉再插入数据,简化为删除再增加两个操作,查找的时候用折半查找,只要涉及到除以2的算法时间复杂度一般都为o(logn)4.无序链表的增加找到无序链表的最后一个插入,插入的时候,找前一个元素,先让插入元素next域指向下一个元素,再让前一个元素的next域指向插入元素。无序链表的删除找到需要删除的元素的前一个元素,让它的next域指向下一个的下一个。3.栈和队列的增加和删除十分类似。

2023-10-22 11:55:04 289 1

原创 前端第三次 选择器 盒子模型

【代码】前端第三次 选择器 盒子模型。

2023-10-21 22:11:49 68 1

原创 数据结构1 目录 时间复杂度 有序树的构造与先序中序后序遍历 哈夫曼树与哈夫曼编码

1.路径和路径长度:从根节点到后代节点的道路称为路径,通路当中分支节点的个数称为路径长度,若规定根节点的层数为1,则从根节点到第L层节点的长度为 L-1。4.树的带权路径长度:树中所有叶子节点带权路径之和,记作WPI,权值越大的节点离根节点越近的二叉树就是最优二叉树,也叫哈夫曼树。*有序树(左子树的值要比根节点小,右子树的值要比根节点大,相等的左右都可以放,不具有这个特点的叫无序树)3.带权路径长度:从根节点到该节点的路径长度与该节点的权的乘积。选最小的3和7加起来做10和8一层。

2023-10-21 21:20:03 174 1

原创 第三次java linux系统下写java

点字母a或ii进入编辑状态,点esc退出编辑,输入 :wq保存退出,需要注意i,有时候冒号出不来,就按字母a或i重新进入再退出保存。cd /进入根目录,在linux中不分盘,只有一个根目录相当于windows中的c盘。x3中写入指令,sh x3,指令执行,sh是linux中运行shell的命令。centos是黑窗操作,是功能最全的操作,没有桌面损耗,现在是7.6版本。ll查看详细信息,浅蓝色是软连接,相当于windows里面的快捷方式。rm是删除进回收站的意思,rm -rf是不进回收站,彻底删除。

2023-10-19 23:03:19 80

原创 第二次前端 插入图片音频视频 列表 表格 框架 锚点结合框架窗口 一些快捷键的使用

插入图片音频视频 列表 表格 框架 锚点结合框架窗口<!DOCTYPE html><html> <!--head标签是设置页面的配置信息--> <head> <!--title标签是设置页面的标题信息--> <title>first page</title> <!--meta标签是设置页面的编码配置信息--> <meta charset="

2023-10-14 23:03:46 81 1

原创 第一次前端 前端知识体系 锚点的使用

javascript,简写js,为了拓展浏览器交互功能:数据交互,效果交互、第三方框架:jquery(函数库)、layer(弹框组件)、echarts(图表库)、vue(不用找元素,直接进行数据更新,去dom操作,基于js)html(hyper text makeup language超文本标记语言)、css(cascading style sheet层叠样式单)、javascriipt。css的作用是创建样式,选择器(选元素)、盒子模型(元素特性)、布局。

2023-10-14 17:32:30 233 1

原创 第二次java 关于Java语言的基本了解 代码命名规范 多进制之间的转换

一个8bit可以形成任何数,计算机里的数都是8bit的倍数,因此不存在13bit,15bit的数据(不是8的倍数)。屏幕由许多个像素点组成,其中每个像素点里由三原色灯光组成,三原色的强度不同导致看到的颜色不同。每个像素点都有xy坐标,长宽几千,用short是可以的。同理,四个八位,就是第一个数乘以2的24次,加上第二个数乘以2的16次方,加上第三个数乘以2的8次方加上第四个数。01010101,00101010:左乘2的八次方加上后面的数。3,4,5,6,7,8,9右边大量面试题,3456是主要语法。

2023-10-14 17:30:05 70 1

原创 第一次java java语言的基本数据类型

双击wps文件可以打开的原因:获取文件的路径并交给wps的主方法;基础知识、应用工程知识、非专业素质(沟通能力、性格)安装jdk,然后在记事本里写代码,并在cmd中编译。只要支持相同的编码,就可以互相打开对方的文件。视频的显示:视频的本质就是图片。1bit=1/0=1比特。java是一种c类语言。1B=8bit=1字节。

2023-10-13 23:00:33 54

原创 第五次课 栈、方法调用与传参

每个独立运行的程序都是自己独占一片内存区域且互不影响,程序占用内存空间是申请一个或多个非常大的数组,如果是多个要关联起来。每个程序都占的内存比较大,其中分成多个小小的内存,被不同的子程序占用。

2023-10-06 22:40:17 68 1

原创 第四次课 快速排序、归并排序、堆排序

24,26,31,78,88,99,32,-2,-1,1,57,11,13,15,18,21,35,59,62,65,68 n个有序数组,每个数组长度为1。优化版本从每组数里面的前三个选择中间的数作为基准数,未优化的就选取比较后分开的每组数的第一个数作为基准数就可以.选树顶的挑出来,然后将树末尾的数补到最顶,然后和两个孩子进行比较,大的孩子放到最顶,逐渐下放,形成新的大根堆。按照数组顺序插入,跟父节点进行比较,如果比父节点大,则和父节点的值进行交换。2+1,右节点的下标=父节点的下标。

2023-10-04 17:29:52 86 1

原创 第三次课--折半查找与冒泡排序

只有n个有序数组数据才可以用折半查找,链表数据不可以用。只有达到log和O(1)级别才是真正的商用级别。这种简单数据结构的书写不能超过两分钟;比较 1+2+3+…时间复杂度–cpu计算次数。时间复杂度是O(n^2);空间复杂度–空间单位消耗。1.折半查找/二分查找。需要进行n-1轮比较。

2023-10-03 22:16:48 89 1

原创 第二次课 --结构体指针和数组

直接声明的变量一般int型未赋值默认为0;char型未赋值默认为一个白方块其实内存里也是0;而结构体内部的变量不一定,看内存是否干净;变量和其值中间还有一块地址;结构体AA申请的时候一次性申请5字节;3>可以给结构体取一个或者多个别名;2>结构体可以包含结构体类型;1>结构体包含基本数据类型;

2023-10-03 11:59:23 82 1

原创 c语言第一次学习--函数的书写和六种数据类型

至于为什么6~7,是因为十进制和二进制相互转化的时候,不是所有数都能对得上,会有些情况存在误差。阶码使用的是一种叫做移码的东西,和补码类似,就是数值整体偏移固定长度(float中偏移量offset=127)。double有效数字16位,float有效数字6~7位,float和int相比精度并不高;尾数部分采用1.M的格式,小数点前固定有一个1,这样表示的范围又大了一点。需知道不管怎么调用,函数的每次调用都是独立的个体,是互不干扰的。1>既然是数字,可以用%d输出,可以看到该符号的编码;2>也可以比较大小;

2023-10-02 12:08:42 97 1

原创 链表

链表的有关内容结点1.链表的结点由指针域和数据域组成;2.最后一个结点指向NULL;动态内存空间分配1.malloc(c语言)格式为typename p=(typename)malloc(sizeof(typename))含义是,以typename的大小为参数,开辟一块typename大小的内存空间,这时候的内存空间是没有类型的,因此需要强制转化为typename型,然后返回一个此类型的指针给p赋值2.new(c++)格式:typenamep= new typename可以直接开辟一块

2020-11-13 10:59:18 131

原创 指针

指针的理解1.地址&是取地址符,&a代表取a的地址2.指针变量格式:基类型* p定义一个指针变量p,用来存储地址如定义int型:int* p;也可以写成 int p;指针变量初始化:int p=&a;int* 是指针变量p的类型,因此如果要给p赋值要写成int *p;p=&a;如果要通过p来获得变量a,可以用p,即p=a3.指针与数组数组的首地址可以用a或者&a0同理a+i=&a[i];a+i其实相当于一个指针变量,

2020-11-10 22:00:55 118

原创 算法入门经典 求int型的最大值最小值

//求int型的最大值和最小值,这个程序为什么运行不出结果,是循环次数太多了吗#include<stdio.h>int main(){int i=0,max,min;while(1){if(i+1<=0){max=i;min=i+1;break;}i++;}printf("%d %d\n",max,min);return 0;}...

2020-10-27 11:38:59 228

原创 算法竞赛入门经典 判断闰年

#include<stdio.h>#include<math.h>int main(){int n;scanf("%d",&n);if(n%4000)printf(“是闰年”);else if(n%40&&n%100!=0)printf(“是闰年”);elseprintf(“不是闰年”);return 0;}//判断闰年,注意分支思考,先else和直接用elseif的趋同之处...

2020-10-27 11:37:43 95

原创 算法竞赛入门经典求三个整数的平均数

//求三个整数的平均值,其实这个代码写错了,因为输入的abc并非整数,将3改成3.0,即使abc是整数,得出的仍旧为double型#include<stdio.h>#include<math.h>int main(){double a,b,c;scanf("%lf%lf%lf",&a,&b,&c);double s;s=(a+b+c)/3;printf("%.3lf\n",s);return 0;}可以看一个学长的正确代码...

2020-10-27 11:36:49 1206

原创 算法竞赛入门经典7744问题

//7744问题#include<stdio.h>#include<math.h>int main(){ for(int x=1;;x++) { int n=xx; if (n<1000) continue; if (n>9999) break; int hi=n/100; int lo=n%100; if(hi/10hi%10&&lo/10lo%10)

2020-10-27 11:32:06 310

原创 算法竞赛入门经典之求圆柱体的体积

#include<stdio.h>#include<math.h>int main(){const double pi=acos(-1.0); //用来求常数派double r,h,s1,s2,s;scanf("%lf%lf",&r,&h);//lf表示double型的输入s1=pirr;s2=2pirh;s=s12.0+s2;printf(“Area=%.3f\n”,s);return 0;}...

2020-10-24 13:15:03 233 1

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

反射实现tomcat的一系列代码,可以在命令行操作

反射实现tomcat的一系列代码,可以在命令行操作

2023-12-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除