自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java新特性之Lambda和Stream流(了解)

本文介绍了Java 8中函数式编程的核心概念和应用,主要包括: Lambda表达式:简化匿名内部类的语法,强调"做什么"而非形式,支持无参、有参和代码块实现。 函数式接口:仅含一个抽象方法的接口,配合@FunctionalInterface注解使用,如Supplier、Consumer等JDK内置接口。 方法引用:通过"::"操作符引用静态方法、成员方法和构造方法,进一步简化代码。 Stream流:基于流水线的集合操作,支持过滤、映射、排序等中间操作和forEach、

2025-09-08 11:28:36 42

原创 Java之反射

本文介绍了Java反射机制和代理模式的核心内容。反射部分详细讲解了两种创建对象的方式(Class.newInstance()和Constructor.newInstance()),以及获取类成员方法的方法(getMethod()和getDeclaredMethod())。动态代理部分重点阐述了通过Proxy类和InvocationHandler接口实现运行时动态生成代理对象的技术,对比了静态代理需要手动编写代理类的局限性。文章还介绍了使用反射操作数组的Array类方法,并简要提及设计模式的概念和分类。这些技

2025-09-05 09:42:07 65

原创 Java之反射

本文系统介绍了Java类加载机制和反射API的核心内容。类加载部分阐述了JVM加载.class文件的流程、双亲委派模型及不同类加载器的作用。反射部分详细讲解了获取Class对象的三种方式,以及如何通过反射获取类信息、构造方法、成员变量和调用方法。重点内容包括:使用Constructor实例化对象、Field类操作成员变量、Modifier类判断修饰符等。文章通过具体代码示例展示了反射的动态特性,如无需修改代码即可切换实现类,以及访问私有成员的方法。这些技术为Java程序提供了运行时动态操作类的能力,是实现框

2025-09-05 09:40:53 67

原创 Java之网络编程

本文系统介绍了计算机网络编程基础知识,包括网络分层模型(OSI和TCP/IP)、IP协议与TCP/UDP协议的对比、端口与套接字概念,以及基于Java的TCP/UDP网络编程实现。重点讲解了TCP的Socket和ServerSocket类、UDP的DatagramSocket和DatagramPacket类的使用方法,并通过具体代码示例展示了客户端-服务器通信的实现过程。文章还涉及IP地址分类、InetAddress类应用、半关闭机制等技术细节,为网络编程入门提供了全面的技术指导。

2025-09-03 10:57:19 47

原创 Java之多线程(下)

本文介绍了Java多线程中的线程同步与通信机制。主要内容包括:1.线程安全问题及解决方案,通过火车站售票案例展示共享资源冲突;2.两种同步方式:隐式锁synchronized(方法锁和代码块锁)和显式锁ReentrantLock;3.死锁的四种条件及预防策略;4.线程通信方法:传统wait()/notify()机制和Lock的Condition机制,并实现生产者消费者模型;5.对比了wait/sleep/yield方法以及两种通信方式的差异。文中通过多个代码示例演示了不同同步策略的应用场景和实现方式。

2025-08-30 09:41:33 29

原创 Java之多线程使用(上)

本文摘要: Java多线程编程指南详细介绍了线程的基本概念与实现方法。主要内容包括:1) 线程与进程的区别,线程作为系统调度的最小执行单元;2) 三种创建线程的方式:继承Thread类、实现Runnable接口和Callable接口,分析各自优缺点;3) 线程生命周期及状态控制方法,如设置优先级、守护线程、休眠(sleep)、联结(join)、礼让(yield)和中断(interrupt)等核心操作;4) 常见问题如run()与start()区别、线程单次启动限制等注意事项。通过代码示例演示了各种线程控制方

2025-08-30 09:40:36 33

原创 Java之-枚举&xml&properties

本文主要介绍了Java中的枚举类型和XML配置文件操作。在枚举部分,详细讲解了枚举的定义、使用场景、常用方法(values()、ordinal())、枚举与switch结合使用,以及在枚举中添加变量和方法等特性。在XML部分,首先介绍了Properties类读写配置文件的方法,然后详细讲解了XML的基本语法结构、DOM4J解析XML的方式,包括读取、修改和写入XML文件的操作步骤,并通过案例演示了如何批量将数据写入XML文件。全文通过多个代码示例展示了如何在实际开发中应用这些技术。

2025-08-30 09:39:18 64

原创 IO流之处理流

1.0。

2025-08-29 14:35:27 169

原创 IO流之节点流

本文介绍了Java中的IO流操作,主要内容包括: 字节流和字符流:字节流以8位字节为单元操作二进制数据;字符流以16位字符为单元处理文本数据。分别通过InputStream/OutputStream和Reader/Writer类实现。 常用方法:详细说明了read()、write()等核心方法的使用,并通过文件读写示例演示了单字节读取、循环读取、批量读取等操作。 流分类:从流向(输入/输出)和数据单元(字节/字符)两个维度对IO流进行分类。 新IO特性:对比了BIO(阻塞)、NIO(非阻塞)和AIO(异步)

2025-08-29 14:33:57 126

原创 Java集合之集合工具类Collections和文件类

1.0。

2025-08-28 15:31:29 30

原创 Java集合之Map

导入map动词为绘制地图,名词解释为地图,天体图,用户查看地图时,根据坐标就可以映射到建筑物。坐标即键,而建筑物就是我们要获取的目标对象,称之为值,所以地图是由键值对组成的,那我们再看程序中的地图Map。程序中的地图,与生活中的地图是一样的结构,Map是以键值对形式存储元素的。所以Map的定义是以键值对形式存储元素的接口。定义:集合中以键值对形式存储元素的接口分类:HashMap,TreeMap和Hashtable。

2025-08-28 15:29:49 96

原创 Java集合操作之Set集合

本文系统介绍了Java中的Set集合及其实现类。主要内容包括:1. Set集合概述:无序存储不可重复元素,主要实现类有HashSet、LinkedHashSet和TreeSet;2. HashSet底层采用哈希表结构(数组+链表/红黑树),通过hashCode()和equals()方法保证元素唯一性;3. LinkedHashSet在HashSet基础上增加双向链表维护插入顺序;4. TreeSet基于红黑树实现自动排序,通过Comparable接口(自然排序)或Comparator比较器(定制排序)定义排

2025-08-27 16:07:48 33

原创 Java集合操作之List集合

本文系统介绍了Java集合框架中的Collection体系,重点讲解了List接口及其实现类ArrayList、Vector和LinkedList。主要内容包括: Collection概念:作为存储可变长度引用类型数据的容器,与数组相比具有长度可变、类型灵活等优点 List集合特点:有序可重复,支持索引操作,主要实现类包括: ArrayList:基于可变数组实现,查询效率高 Vector:线程安全的遗留集合类 LinkedList:基于链表实现,增删效率高 集合操作:详细介绍了增删改查、迭代器遍历等常用方法

2025-08-27 16:06:43 47

原创 Java特性之异常处理

本文系统介绍了Java异常处理机制。主要内容包括:1.异常定义与分类:异常是程序运行时发生的意外事件,分为Error(严重错误)和Exception(可处理异常)。2.常见异常类型:如算术异常、空指针异常、数组越界异常等,并介绍了运行时异常与编译时异常的区别。3.异常处理机制:通过try-catch-finally结构捕获处理异常,finally块确保资源释放,throw主动抛出异常,throws声明可能抛出的异常。4.自定义异常:继承Exception或RuntimeException创建特定业务异常。5

2025-08-26 11:47:56 48

原创 Java之常用类

本文主要介绍了Java中常用的核心类库及其使用方法。首先讲解了Java类库的作用和API文档的使用方式,重点介绍了String类的特性(不可变性、共享机制)和常用方法(构造、判断、获取、转换等)。详细分析了StringBuffer和StringBuilder的区别,前者线程安全但效率较低,后者线程不安全但效率更高。 接着介绍了包装类的作用,包括Integer、Character等基本类型对应的包装类,以及自动装箱拆箱机制。随后讲解了Arrays工具类的排序、查找功能,Math类提供的数学运算方法,Rando

2025-08-26 11:46:52 30

原创 Java之内部类

本文介绍了Java中嵌套类的概念与分类,包括内部类(成员内部类、局部内部类、匿名内部类)和静态嵌套类。嵌套类通过封装思想实现多继承解决方案,具有访问外部类成员的权限。主要内容包括:1. 内部类特点及三种类型的使用场景和语法规则;2. 静态嵌套类的定义和创建方式;3. Lambda表达式简化匿名内部类的写法,强调函数式接口要求;4. Java17新特性中Lambda与模式匹配的结合应用。通过套娃、工具箱等生活案例,形象说明了嵌套类的设计思想,并对比了各类嵌套类的区别和使用场景。

2025-08-26 11:45:06 56

原创 抽象类和接口(下)

JDK8接口新增默认方法和静态方法:默认方法用default修饰,可由实现类直接调用或重写;静态方法通过接口名直接调用。抽象类实现多态时,可通过向上转型和instanceof判断类型执行特定操作。接口实现多态则通过工厂模式,根据参数返回不同实现类对象(如Nike、Adidas等),体现了"同一方法不同实现"的多态特性。两种方式都实现了方法调用的灵活性,适用于不同业务场景。

2025-08-26 11:43:39 36

原创 抽象类和接口(上)

文章摘要:本文系统介绍了Java中的抽象类和接口两大特性。抽象类通过abstract关键字定义,可包含抽象方法和普通方法,主要用于作为父类约束子类行为(如动物类的eat方法)。接口用interface定义,支持多实现,用于扩展功能(如USB设备接口)。两者区别在于:抽象类强调"是什么"的继承关系,接口关注"能做什么"的功能扩展。文章通过动物喂食、设备接口等案例,演示了抽象类和接口的实际应用,并对比了它们在成员特点、继承关系和使用场景上的差异。最后指出抽象类耦合度高但灵

2025-08-26 11:42:34 788

原创 面向对象的案例练习

本文实现了一个电子宠物系统,通过面向对象编程的三大特性实现主人喂养宠物的功能。系统包含Pet父类及其子类Cat和Dog,以及Master主人类。Pet类定义基本属性和方法,子类重写eat()和print()方法实现不同进食逻辑和信息输出。Master类通过feed()方法调用宠物进食并扣除金币。测试类使用菜单循环让主人选择喂养不同宠物。系统体现了封装(私有属性+公共方法)、继承(子类扩展父类)和多态(父类引用调用子类方法)的思想,完整实现了宠物健康值、亲密度变化和金币扣除等核心功能。

2025-08-26 11:40:40 28

原创 Java多态(下)

本文通过"电子萌宠"案例讲解Java多态的实现与应用。主要内容包括:1)通过Pet、Dog类展示多态的基本实现,演示向上转型和方法的动态绑定;2)分析多态的优缺点,说明类型转换异常问题并引入instanceof运算符进行类型检查;3)以饲养员喂食动物和替父从军案例,展示多态在实际开发中的应用,体现代码的扩展性;4)强调向下转型时需用instanceof确保类型安全。案例包含完整的类定义、方法重写和测试代码,生动展示了多态"编译看左,运行看右"的特性。

2025-08-26 11:39:17 28

原创 Java特性之多态(上)

本文系统介绍了面向对象编程中的多态特性。主要内容包括:1)多态的定义与分类(编译时和运行时多态);2)多态的语法实现和成员访问规则;3)转型机制(向上转型和向下转型)及其应用场景;4)方法绑定原理(静态绑定和动态绑定);5)通过USB设备案例展示多态的实际应用。文章强调多态通过"同一接口,不同实现"的特性,能显著提升代码的灵活性和可扩展性,是面向对象编程的重要特性之一。

2025-08-22 17:07:01 38

原创 Java特性之继承

第二,重写方法不能使用更严格的访问权限,四种访问权限的级别顺序是,public,protected,缺省的,private。比如,如果父类方法的访问权限是protected,那子类方法的访问权限不能更严格,所以可以是protected,也可以是public,但是不能是后两者。第一,重写的方法与父类方法,方法名相同,参数列表相同,返回值相同或为子类。继承是子类复用父类的属性和方法的机制,多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承即可。

2025-08-22 17:05:50 65

原创 方法与变量(下)

本文系统介绍了Java编程中的核心概念,包括变量、封装、包、访问修饰符和构造方法等。主要内容包括: 变量类型:成员变量(类内声明,有默认值)与局部变量(方法内声明,需初始化)的区别和使用场景。 封装机制:通过private修饰成员变量并提供public的getter/setter方法,实现数据隐藏和保护,提高代码安全性和可维护性。 包管理:使用包解决类命名冲突,介绍核心包功能和命名规范,以及不同包中类的调用方式。 访问修饰符:详细说明public、protected、private和默认四种访问级别的差异和

2025-08-22 17:04:34 46

原创 方法与变量(上)

本文介绍了Java中成员方法的使用,主要内容包括: 成员方法的定义与分类,区分实例方法和静态方法的特点及调用方式 无参方法和有参方法的语法格式及调用示例,重点说明参数的类型和顺序要求 方法调用的值传递和引用传递机制,通过案例展示不同数据类型的传递特点 四种方法返回类型的对比分析,包括无参无返、无参有返、有参无返和有参有返 递归算法的原理和应用,通过阶乘计算等案例说明递归的实现方式和注意事项 文章通过大量代码示例演示了各类方法的具体应用场景,帮助理解方法在面向对象编程中的重要作用。

2025-08-22 17:02:54 26

原创 Java类和对象

本文系统介绍了面向对象编程(OOP)的核心概念与Java实现。主要内容包括: 面向对象三大特征(封装、继承、多态)及其相较于面向过程的优势; 类与对象的关系及定义方式,包括属性、方法的语法规范; 对象创建与内存分配机制(栈存储引用,堆存储实例); 引用数据类型的特点及内存管理原理; 实践案例:学生类设计与对象操作,展示类成员变量、方法调用等基础操作。通过理论结合实例,完整呈现了面向对象编程的核心思想及Java实现方法。

2025-08-22 17:01:54 30

原创 Java的数组

本文介绍了数组的概念、特点及使用方法。数组是一种固定长度、存储相同类型元素的容器,可分为一维、二维及多维数组。文章详细讲解了数组的创建、初始化(包括静态和动态初始化)、遍历方法(for循环和foreach循环)以及常见操作如求最大值。还介绍了Arrays工具类、冒泡排序算法,并分析了数组的内存结构。针对二维数组,说明了其定义格式、初始化方法及遍历求和案例。最后指出了数组操作中的常见异常(空指针异常和数组越界异常)以及多维数组的应用。

2025-08-21 17:15:01 26

原创 Java的循环结构

本文介绍了Java中的循环结构及其应用。主要内容包括:1. 三种基本循环结构(while、do-while、for循环)的语法特点、执行流程和使用场景;2. 循环控制语句break和continue的作用及使用;3. 循环嵌套的概念和应用,如九九乘法表的实现;4. 程序调试的基本方法和技巧。文章通过具体案例演示了各种循环结构的使用方法,并比较了它们的区别,帮助读者掌握Java循环编程的核心概念和实际应用。

2025-08-21 17:13:52 91

原创 运算符及选择结构

本文摘要:本文系统介绍了Java中的运算符和程序控制结构。主要内容包括:1.运算符部分详细讲解了算术、赋值、关系、逻辑、三目、位运算符等各类运算符的语法和使用场景;2.程序控制结构部分重点阐述了顺序结构、选择结构(if和switch)的语法、执行流程和实际应用,并通过课堂练习演示了具体实现;3.特别对比了if与switch结构的区别,分析了各自适用场景。文章通过大量代码示例和流程图,帮助读者深入理解Java程序的基本控制逻辑和运算符使用方法。

2025-08-21 17:12:39 81

原创 数据类型及集成开发环境

本文摘要: 本文系统介绍了Java开发基础知识和工具使用,主要内容包括:1)IntelliJ IDEA开发工具的安装配置与快捷键使用;2)Java基本数据类型(8种)及其应用,包括整型、浮点型、字符型和布尔型;3)变量与常量的定义与应用;4)自动类型转换与强制类型转换的原理与实现;5)Scanner类的键盘输入操作。文章通过代码示例详细演示了各类概念的实际应用,为Java初学者提供了完整的开发环境搭建指南和基础语法学习路径,涵盖了从工具配置到基础编程的关键知识点。

2025-08-21 17:11:46 79

原创 Java概述及环境搭建

本文概述了Java的基本概念和开发环境搭建。首先介绍了计算机基础知识,包括计算机组成、软件分类和DOS命令。然后详细讲解了Java语言的特点、技术体系(Java SE/EE/ME)、跨平台原理和JVM机制。接着说明了JDK、JRE的安装配置步骤和环境变量设置方法。最后通过HelloWorld示例演示了Java程序的编写、编译和运行流程,并介绍了Java语法规范,包括关键字、标识符命名规则和注释的使用。文章为Java初学者提供了全面的入门指导,涵盖了从计算机基础到第一个Java程序开发的完整过程。

2025-08-21 17:10:25 52

原创 过滤器和监听器

摘要: 本文介绍了JavaWeb三大组件Servlet、Filter和Listener的应用。Servlet用于处理请求和响应;Filter实现请求拦截功能,通过案例展示了登录拦截的实现;Listener用于监听Web项目状态变化,通过示例演示了记录系统日志的功能。三者协同工作,共同构建安全的Web应用体系。其中重点讲解了过滤器链的执行流程、登录验证机制以及监听器在系统日志记录中的应用,提供了完整的代码实现和配置说明。

2025-08-21 15:05:14 183

原创 综合案例 关联添加

本文描述了一个学生信息管理系统的实现过程。系统包含以下核心组件:1)使用Lombok注解的Student实体类;2)StudentDao接口及其实现类,提供添加学生的方法;3)StudentService业务层封装数据访问逻辑;4)ActionServlet处理添加学生请求;5)基于Vue.js的前端页面addStu.html,包含表单提交和异步请求功能。系统实现了学生信息的添加功能,包括姓名、性别、电话和关联教师等字段,并通过axios与后端交互,具备基本的表单验证和结果提示功能。整体采用MVC架构,前后

2025-08-21 15:03:31 131

原创 综合案例练习

本文展示了教师信息管理系统的关键功能实现: 注册功能:通过DAO层实现数据插入,业务层处理请求参数,前端使用Vue+axios提交表单数据; 用户名验证:通过模糊查询检查用户名是否重复,实时反馈验证结果; 条件查询:支持按姓名模糊查询教师信息,并展示查询结果; 修改功能:分两步实现:先根据ID查询数据回显,再提交修改后的数据。系统采用分层架构(DAO+Service+Servlet),前后端通过JSON交互,使用Bootstrap美化界面,Vue.js实现数据绑定和交互逻辑。

2025-08-21 14:59:43 170

原创 Cookie和Session

本文介绍了Cookie和Session的基本概念与应用。Cookie是服务器发给浏览器存储的key-value数据,用于跟踪客户端状态,如保存购物车、记住登录名等。Session是服务端会话跟踪机制,通过浏览器存储的Session ID关联用户信息。文章包含Servlet实现Cookie和Session的代码示例,如登录验证、获取用户信息等功能,并比较了Cookie和Session的特性差异(存储位置、大小限制等)。最后通过访问次数统计案例演示了Session的具体应用,展示了如何利用Servlet技术实现

2025-08-21 14:57:43 198

原创 AJAX和Axios

搜索引擎可能无法很好地抓取和索引通过 Ajax 动态加载的内容,影响网站的搜索引擎优化。如果 注册的时候 验证用户名是否重复,如果重复,整页刷新,用户体验差,慢。:Ajax 涉及客户端和服务器端的交互,增加了开发和调试的难度。:无需刷新整个页面,就能实现数据的动态更新,提高了用户体验。:按需获取数据,避免了不必要的数据传输,减轻了服务器负担。线程的同步:同一时间,只有一个线程被执行,安全,效率低。线程异步:同一时间,有多个线程被执行,不安全,效率高。:减少了页面重载,提高了应用的响应速度和性能。

2025-08-21 14:56:00 427

原创 VUE模板语法

JSON:将实体类属性,解析成一组字符串,以key-value键值对的形式保存。2、操作 textarea、checkbox、radio、select。可以绑定到 input、textarea、select(下拉列表)[注意]:前端需要解析数据,如何去解析,要使用 JSON。v-model本质上 语法糖,利用了vue的监听机制。在 文本框输入数据是,可以同步再JS中更新数据。前端可以将JSON字符串 解析成 数组的形式。item类似增强for循环 foreach。不仅仅可以遍历数组,也可以遍历对象。

2025-08-21 14:49:08 312

原创 Vue基础

movies:["哪吒2","蛟龙行动","唐探1900","封神2"]改变原有属性作用,可以操作 vue中定义的方法和变量。//{{}}: 插值表达式 大胡子语法。//{{}}: 插值表达式 大胡子语法。与 {{}} 的区别,不能拼接其他字符。// const js声明的常量。// const js声明的常量。项目开发阶段 都要遵循这一架构。//可以裂解为声明变量的地方。//可以裂解为声明变量的地方。// 1.创建Vue实例。// 1.创建Vue实例。V:view 视图 前端。v-bind 属性绑定。

2025-08-21 14:45:58 341

原创 Demo08 Servlet

借助Servlet,开发者能构建动态交互的Web页面,轻松处理表单数据、实现用户认证等功能,为Web开发带来极大便利。通过Servlet,开发者能够轻松处理HTTP请求,实现数据的增删改查,以及会话管理等功能。最后,在容器关闭或Servlet长时间未被使用时,会调用销毁方法释放资源。(3)常见的是继承HttpServlet类,重写doGet()、doPost()处理HTTP请求。也可实现Servlet接口,自行处理请求和响应。在Spring MVC等框架中,通过注解可轻松创建Servlet,简化开发。

2025-08-19 10:13:14 1796

原创 Tomcat

B/S缺点是什么:首先,B/S模式对网络依赖性强,网络状况不佳时,系统响应速度慢甚至无法正常使用。首先,它能充分利用客户端计算机的资源,减轻服务器的负担,提高系统的整体性能。再者,C/S结构在数据传输和处理上相对高效,能快速响应用户操作,为用户带来流畅的使用体验。在“C/S(客户端/服务器)模式”中,“C”代表“Client”,即客户端。客户端是用户与系统进行交互的接口,负责向服务器发送请求,并将服务器返回的数据以合适的形式呈现给用户 ,比如常见的各种手机APP、电脑上的软件程序等很多都属于客户端。

2025-08-18 14:43:41 309

原创 BootStrap前端框架

BootStrap框架 HTML、CSS、JS框架 用于再web上开发响应式框架,同时兼容移动端,可以扩展。前提:导入 CSS文件,JS文件(Bootstrap,Jquery)下载BootStrap框架的文件,每次使用,都去加载。使用NPM下载,依赖 node.js 也需要网络。简单理解:html CSS js的开发工具包。原生HTML、CSS构建一个网页 非常麻烦。但是:必须要依靠网络实现,网络畅通。BootStrap容器 栅格系统。默认每一行都要12个小格。栅格系统(网格系统)

2025-08-18 14:42:23 170

空空如也

空空如也

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

TA关注的人

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