- 博客(46)
- 收藏
- 关注
原创 JavaWeb,前端工程化
let 和var的差别1、let 不能重复声明2、let有块级作用域,非函数的花括号遇见let会有块级作用域,也就是只能在花括号里面访问。3、let不会预解析进行变量提升4、let 定义的全局变量不会作为window的属性5、let在es6中推荐优先使用const和var的差异1、新增const和let类似,只是const定义的变量不能修改2、并不是变量的值不得改动,而是变量指向的那个内存地址所保存的数据不得改动。1、字符串中可以出现换行符2、可以使用 ${xxx} 形式输出变量和拼接变量es6
2026-04-21 20:37:24
425
原创 JavaWeb,会话_过滤器_监听器
cookie是一种客户端会话技术,cookie由服务端产生,它是服务器存放在浏览器的一小份数据,浏览器以后每次访问该服务器的时候都会将这小份数据携带到服务器去。服务端创建cookie,将cookie放入响应对象中,Tomcat容器将cookie转化为set-cookie响应头,响应给客户端客户端在收到cookie的响应头时,在下次请求该服务的资源时,会以cookie请求头的形式携带之前收到的Cookiecookie是一种键值对格式的数据,从tomcat8.5开始可以保存中文,但是不推荐。
2026-03-29 18:24:22
418
原创 JavaWeb,Servlet
Servlet (server applet) 是运行在服务端(tomcat)的Java小程序,是sun公司提供一套定义动态资源规范;从代码层面上来讲Servlet就是一个接口用来接收、处理客户端请求、响应给浏览器的动态资源。在整个Web应用中,Servlet主要负责接收处理请求、协同调度功能以及响应数据。我们可以把Servlet称为Web应用中的控制器不是所有的JAVA类都能用于处理客户端请求,能处理客户端请求并做出响应的一套技术标准就是Servlet。
2026-03-13 19:15:31
395
原创 JavaWeb,XML_Tomcat_HTTP
1.创建SAXReader对象2. 解析XML获取Document对象: 需要传入要解析的XML文件的字节输入流3. 获取文档的根标签4. 获取标签的子标签//获取所有子标签//获取指定标签名的子标签List<Element> sonElementList = rootElement.elements("标签名");5. 获取标签体内的文本6. 获取标签的某个属性的值String value = element.attributeValue("属性名");HTTP 超文本传输协议。
2026-03-13 19:14:40
344
原创 JavaWeb,JS
BOM是Browser Object Model的简写,即浏览器对象模型。BOM由一系列对象组成,是访问、控制、修改浏览器的属性和方法(通过window对象及属性的一系列方法 控制浏览器行为的一种编程)BOM没有统一的标准(每种客户端都可以自定标准)。BOM编程是将浏览器窗口的各个组成部分抽象成各个对象,通过各个对象的API操作组件行为的一种编程BOM编程的对象结构如下window 顶级对象,代表整个浏览器窗口。
2026-03-13 19:12:20
382
原创 JavaWeb,CSS
CSS 层叠样式表(英文全称:(Cascading Style Sheets) 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力 ,简单来说,美化页面。
2026-03-05 17:04:57
445
原创 JavaWeb,HTML
HTML是Hyper Text Markup Language的缩写。意思是超文本标记语言。它的作用是搭建网页结构,在网页上展示内容。
2026-03-05 17:03:21
555
原创 SQL(2)
定义条件是事先定义程序执行过程中可能遇到的问题,处理程序定义了在遇到问题时应当采取的处理方式,并且保证存储过程或函数在遇到警告或错误时能继续执行。这样可以增强存储程序处理问题的能力,避免程序异常停止运行。说明:定义条件和处理程序在存储过程、存储函数中都是支持的。定义条件就是给MySQL中的错误码命名,这有助于存储的程序代码更清晰。它将一个错误名字和指定的错误条件关联起来。这个名字可以随后被用在定义处理程序的语句中。DECLARE 错误名称 CONDITION FOR 错误码(或错误条件)和。
2026-02-27 09:19:28
363
原创 SQL(1)
使用INSERT同时插入多条记录时,MySQL会返回一些在执行单行插入时没有的额外信息,这些信息的含义如下: ● Records:表明插入的记录条数。INSERT还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录的值一个一个输入,只需要使用一条INSERT语句和一条SELECT语句组成的组合语句即可快速地从一个或多个表中向一个表中插入多行。table_name指定要执行删除操作的表;为表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。
2026-02-07 11:03:50
887
原创 Java,JDK8-17新特性
只包含一个抽象方法(Single Abstract Method,简称SAM)的接口,称为函数式接口。当然该接口可以包含其他非抽象方法。你可以通过 Lambda 表达式来创建该接口的对象。(若 Lambda 表达式抛出一个受检异常(即:非运行时异常),那么该异常需要在目标接口的抽象方法上进行声明)。我们可以在一个接口上使用注解,这样做可以检查它是否是一个函数式接口。同时 javadoc 也会包含一条声明,说明这个接口是一个函数式接口。在包下定义了Java 8 的丰富的函数式接口。
2026-01-23 22:53:36
1008
原创 Java,反射机制
Reflection(反射)是被视为动态语言的关键,反射机制允许程序在运行期间借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射。
2026-01-23 22:48:49
587
原创 Java,网络编程
Java是 Internet 上的语言,它从语言级上提供了对网络应用程序的支持,程序员能够很容易开发常见的网络应用程序。Java提供的网络类库,可以实现无痛的网络连接,联网的底层细节被隐藏在 Java 的本机安装系统里,由 JVM 进行控制。并且 Java 实现了一个跨平台的网络库,程序员面对的是一个统一的网络编程环境。
2026-01-22 16:56:05
609
原创 Java,File类与IO流
File类及本章下的各种流,都定义在java.io包下。一个File对象代表硬盘或网络中可能存在的一个文件或者文件目录(俗称文件夹),与平台无关。(体会万事万物皆对象)File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。File对象可以作为参数传递给流的构造器。想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。
2026-01-22 14:37:39
626
原创 Java,数据结构与集合源码
/ 存储的数据// 下一个节点的内存地址Node next;Node prev;E data;Node next;int size;//入栈throw new RuntimeException("栈空间已满,入栈失败");size++;//出栈throw new RuntimeException("栈空间已空,出栈失败");size--;return obj;int size;
2026-01-19 23:23:54
677
原创 Java,泛型
格式:class A{}当我们在类或接口中定义某个成员时,该成员的相关类型是不确定的,而这个类型需要在使用这个类或接口时才可以确定,那么我们可以使用泛型类、泛型接口。泛型方法,不是使用了泛型参数的方法格式:权限修饰符 返回值类型 方法名 (形参列表){//通常在形参列表或返回值类型的位置会出现泛型参数}举例:public E method(E e) {};说明:声明泛型方法时,指明其泛型类型//自定义泛型方法。
2026-01-19 23:18:51
591
原创 Java,集合框架体系
(11)boolean retainAll(Collection coll):从当前集合中删除两个集合中不同的元素,使得当前集合仅保留与coll集合中的元素相同的元素,即当前集合中仅保留两个集合的交集,即this = this ∩ coll;即coll集合是否是当前集合的“子集”(2)addAll(Collection other):添加other集合中的所有元素对象到当前集合中,即this = this ∪ other。(12)Object[] toArray():返回包含当前集合中所有元素的数组。
2025-12-13 17:41:53
1246
原创 Java,其他类
BigInteger 提供所有 Java 的基本整数操作符的对应物,并提供 java.lang.Math 的所有相关方法。该方法的作用是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。此方法返回的值可能随时间的推移而变化,这取决于主机环境。该方法的作用是获得系统中属性名为key的属性对应的值。由于该类的构造器是private的,所以无法创建该类的对象。System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。
2025-12-04 21:26:00
1006
原创 Java,日期时间API
实例化:由于Calendar是一个抽象类,所以需要创建其子类的实例,可通过Calendar的静态方法getInstance()即可获得。构造器:SimpleDateFormat sdf = new SimpleDateFormat(String pattern);Instant:类似于Date类,时间线上的一个瞬时点,用来记录应用程序中时间的时间戳。类似于SimpleDateFormat。实例化:(自定义格式)
2025-12-02 18:00:13
849
原创 Java,String类
(17)String substring(int beginIndex, int endIndex) :返回一个新字符串,它是此字符串从beginIndex开始截取到endIndex(不包含)的一个子字符串。(16)String substring(int beginIndex) :返回一个新的字符串,它是此字符串的从beginIndex开始截取到最后的一个子字符串。(12)int indexOf(xx):从前往后找当前字符串中xx,即如果有返回第一次出现的下标,要是没有返回-1。
2025-12-01 21:59:28
1169
原创 Java,多线程
程序(program):为完成特定任务,用某种语言编写的’一组指令的集合’。进程(process):程序的一次执行,或是正在内存运行的应用程序。程序是静态的,进程是动态的,线程(thread):进程可进一步细分为线程,是程序内部的一条执行路径。jdk5.0及之后:Thread类新增了一个内部类State。方式3:实现Callable接口(jdk5.0新增)方式4:创建线程池(jdk5.0新增)单例设计模式懒汉式的线程安全的写法。在同步机制下,考虑线程间的通信。同步机制会带来的问题:死锁。
2025-11-28 11:09:37
482
原创 Java,异常处理
Java中把不同的异常用不同的类表示,一旦发生某种异常,就创建该异常类型的对象,并且抛出(throw),然后程序员就可以捕获(catch)到这个异常对象,并处理;②针对try中抛出的异常类的对象,使用之后的catch语句进行匹配。②throws的方式仅是将异常抛给了此方法的调用者,调用者仍然需要考虑如何处理相关异常,从这个角度看,throws的方式并不是真正意义上处理了异常。③子类重写的方法抛出的异常类型可以与父类被重写抛出的异常类型相同,或是父类被重写方法抛出的异常类型的子类。①继承于现有的异常体现。
2025-11-22 08:58:27
1257
原创 Java,面向对象(高阶总结)
String-->基本数据类型、包装类:包装类的parseXxx(String str)>基本数据类型、包装类-->String:String的valueOf()-static修饰的类变量(属性)、类方法与不使用static都区别。>内部可以声明属性、方法、构造器、代码块、内部类等结构。>方法:抽象方法:没有方法体,必须由子类实现此方法。>基本数据类型<->包装类:自动装箱、自动拆箱。-static用来修饰:属性、方法、代码块、内部类。-用来修饰:类、方法、变量(成员变量、局部变量)
2025-11-17 21:05:36
945
原创 Java,包装类
基本数据类型、包装类——>String类型:①调用String的重载静态方法valueOf() ②基本数据类型+""让基本数据类型变成具有引用数据类型的相关特征,就可以调用方法,就称为包装类(封装类),可以更好的面向对象进行开发。基本数据类型——>包装类:①使用包装类的构造器 ②调用包装类的valueOf() ③自动装箱。String类型——>基本数据类型、包装类:调用包装类的静态方法:parseXxx()包装类——>基本数据类型:①调用包装类的xxxValue() ②自动拆箱。
2025-11-16 19:10:43
212
原创 Java,注解
注解也可以看作是一种注释,通过Annotation,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。-注解(Annotation)可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明。-@Test标记的方法本身必须是public,非抽象的,非静态的,void无返回值,()无参数的。-所在类必须是public的,非抽象的,包含唯一的无参构造器。-@Retention:用于描述注解的生命周期。注解可以在类编译、运行的时候进行加载,体现不同的功能。
2025-11-16 19:07:33
248
原创 Java,枚举类
static 枚举类型 valueOf(String name):可以把一个字符串转为对应的枚举对象,要求字符串必须是枚举类对象的名字,否则会出现异常。>static 枚举类型[] values():返回枚举类型对象数组,该方法可以很方便地历遍所有的枚举值。-使用enum关键字定义的枚举类,默认其父类是java.lang.Enum类,不要再显示的定义其父类,否则报错。当通过不同的枚举类对象调用此方法时,执行的是同一个方法。当通过不同枚举类对象调用此方法时,执行的是不同的实现方法。
2025-11-15 19:50:33
262
原创 Java,接口
(其中接口中的方法是默认方法)。默认情况下,子类(或实现类)在没有重写此方法的情况下,调用的是父类的方法(类优先原则)③类实现了两个接口,而两个接口中定义了同名同参的默认方法,则实现类在没有重写的情况下会报错(接口冲突),所以此时实现类必须要重写接口中定义的同名同参的方法。②接口中声明的默认方法可以被实现类继承,实现类在没有重写此方法的情况下,默认调用接口中声明的默认方法,如果实现类重写了此方法,则调用重写的方法。② 类与类之间是继承关系,类与接口之间是实现关系,接口与接口之间是多继承关系。
2025-11-15 19:39:44
280
原创 Java,单例设计模式
所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。-设计模式是在大量“实践中总结”和“理论化”之后优选的代码结构、编程风格、以及解决问题的思考方式。>优点:写法简单,由于内存中较早加载,使用更方便、更快;-饿汉式:“立即加载”,随着类的加载,当前的唯一实例就创建了。-懒汉式:“延迟加载”,在需要使用的时候,进行创建。>优点:在需要的时候进行创建,节省空间。>缺点:内存中占用的时间较长。>缺点:线程不安全。
2025-11-03 21:20:55
301
原创 Java,面向对象_进阶(总结)
过程上:子类调用构造器创建对象,一定会直接或间接的调用其父类的构造器,以及父类的父类的构造器,直到调用到Object()的构造器。>当子类重写了父类的方法,如果需要调用父类被重写的方法时,需要使用super.的方式,表明调用的是父类的方法。-多态的好处:极大的减少了代码的冗余,不需要定义多个重载的方法;>如果子父类中出现了同名的属性,此时使用super.的方式,表明调用的是父类的属性。>局限性:类的单继承性(后续通过类实现接口的方式,解决单继承性的局限性)>重写:继承以后,子类覆盖父类同名同参数的方法。
2025-11-02 20:41:21
744
原创 Java,Object类及常用方法
一、适用性: 任何引用数据类型都可以使用。二、java.lang.Object类中equals()的定义: public boolean equals(Object obj) { return (this == obj); }三、子类使用说明: -自定义的类在没有重写Object中equals()方法的情况下,调用的就是Object类中声明的equals(),比较两个对象的引用地址是否相同。(或比较两个对象是否指向了堆空间中的同一个对象实体)
2025-11-02 19:53:30
589
原创 Java,多态性
但是,把这个对象赋值给不同的类型变量时,这些变量的编译时的类型却不同。-通俗解释:软件系统中各种组件,如模块(Modules)、类(Classes)以及功能(Functions)等,应该在不修改现有代码的基础上,引入新的功能。但是,使用父类变量接收了子类对象之后,我们就不能调用子类独有的方法,所以想要调用子类特有的方法,就必须类型转换。因为多态,就一定会有把子类对象赋值给父类变量的时候,这个时候,在编译期间,就会出现类型转换的现象。-编译时,认为方法是左边声明的父类的方法(即被重写的方法)
2025-11-02 19:48:35
554
原创 Java,方法的重写(继承补充)
父类被重写的方法的返回值类型是引用数据类型(比如类),子类重写的方法的返回值类型必须与被重写的方法的返回值类型可以相同,也可以是被重写的方法的返回值类型的子类。④、异常类型:(超纲)子类重写的方法抛出的异常类型可以与父类被重写的方法抛出的异常类型相同,或是父类被重写的方法抛出的异常类型的子类。>父类被重写的方法的返回值类型是基本数据类型,则子类重写的方法的返回值类型必须与被重写的方法的返回值类型相同。>父类被重写的方法的返回值类型是void,则子类重写的方法的返回值类型必须是void。
2025-10-30 17:12:41
429
原创 Java,继承性
自下而上:定义了类B,C,D等,发现B,C,D有类似的属性和方法,则可以考虑将相同的属性和方法进行提取,封装到类A中,让类B,C,D继承于类A,同时,B、C、D中相似的功能就可以删除了。-自上而下:定义了一个类A,在定义另一个类时,发现B的功能与类A相似,考虑B继承于A。-继承描述事物之间的所属关系(is-a),可见父类更通用、更一般,子类更具体。-子类在继承父类之后,还可以拓展自己特有的功能(体现:增加特有的属性、方法)-继承的出现让类与类之间产生了“is-a”的关系,为多态的使用提供了前提。
2025-10-30 16:09:36
604
原创 Java,面向对象_基础(总结)
场景一:私有化(private)类的属性,提供公共(public)的get和set方法,对此属性进行获取或修改。-象:实际存在的该类事物的'每个个体',是'具体的',因而也被称为'实例(instance)'。>堆空间:new出来的结构(数组,对象),数组的元素,对象的成员变量(属性)都在堆中。-封装性的体现:使用权限修饰符来修饰类及类的内部成员,当这些成员被调用时,体现可见性的大小。-方法重载的要求:“两同一不同”(权限修饰符、方法名相同;-类:具有相同特征的事物的抽象描述,是'抽象的'、概念上的定义。
2025-10-28 19:03:34
1002
原创 Java,类与对象
按变量在类中声明的位置分类:成员变量(或属性)、局部变量(方法内、方法形参、构造器内、构造器形参、代码块内等)对象:实际存在的该类事物的'每个个体',是'具体的',因而也被称为'实例(instance)'。说明:创建类的多个对象时,每个对象在堆空间中都有一个对象实体,每个对象实体中保存着一份类的属性。>堆(heap):new之后的结构(比如:数组的实体,对象的实体),包括对象中的属性。>方法区(method area):存放类的模板。类:具有相同特征的事物的抽象描述,是'抽象的'、概念上的定义。
2025-10-23 16:54:24
1163
原创 Java,变量与运算符
其中:除instanceof外均适用于基本数据类型(> 、 < 、>= 、<=不适用于boolean类型)运算结果为boolean类型。包括:+ 、 - 、* 、/ 、% 、(前)++ 、++(后) 、(前)-- 、--(后)= 、> 、 < 、>= 、<= 、instanceof(后面再学)如:类名、变量名、方法名、接口名、包名、常量名等。包括:= 、+= 、-= 、*= 、/= 、%=&与&&、|与||的区别为:&与|都会将两个判断条件都执行一次;
2025-10-15 17:43:51
1165
原创 Java,HelloWorld的总结
可以在class前面声明public,一个源文件可以声明多个类,但是最多只能有一个类使用public进行声明,并且要求声明为public的类的类名必须与源文件相同。2、main()方法的格式是固定的:public static void main(String[] args)表示程序的入口。针对编译后生成的字节码文件(.class),进行解释运行。1、运行是针对字节码文件对应的Java类进行解释运行的。(1)、查看编译的文件名、文件路径是否正确。(1)、查看运行的文件名、文件路径是否正确。
2025-10-13 11:07:24
321
原创 C语言,数组的合并去重与排序
先定义一个唯一元素的索引(也是去重后数组的长度)unique,然后用两层循环,外层循环历遍原数组的元素,内层循环检测这个元素之前是否出现过,如过没有出现过以unique为下标的临时数组覆盖原数组(因为unique与i一起自增所以数组没有变化),但是如果出现重复元素会直接中断本次内层循环使得unique无法自增而i正常自增,直到出现下个不重复元素unique继续自增(这就使下个不重复元素覆盖重复元素),然后返回unique的值得到新数组的长度。有两种方法一种是暴力去重法,另一种是先排序再去重。
2025-10-12 13:14:01
542
原创 C语言,结构体
通过结构体和动态一维数组来存储学生名字和考试成绩,然后再使用冒泡算法进行升序排列,来实现对学生成绩从高到低的依次输出。把一些基本数据类型组合在一起形成的一个新的复合数据类型,就叫做结构体。定义的同时可以赋初始值,但如果定义之后,则只能单个的赋初始值。为了表示一些复杂事物,而普通的基本数据类型无法满足实际要求。3.通过函数对结构体变量的输入与输出。五、综合运用--学生成绩排序系统。2.结构体成员的赋值和输出。(1)结构体变量名.成员名。(2)指针变量名->成员名。
2025-10-10 23:16:30
527
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅