Java
AnimalsD
如发现有任何问题,欢迎指出,相互学习---402759452
展开
-
处理JSON文件和XML
1、递归处理xml文件的方法使用dom4j依赖为: <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <depe原创 2020-11-12 21:37:52 · 149 阅读 · 0 评论 -
Java之匿名内部类
1、内部类 class外部类{class内部类{}} 内部类仍然是一个独立的类,在编译之后会内部类会被编译成独立的 .class文件,但是前面冠以外部类的类名和$符号 。比如,Person$Heart.class2、匿名内部类...翻译 2019-06-25 15:13:04 · 88 阅读 · 0 评论 -
Java之Collection、泛型
目录一、Collection集合1、集合框架2、Collection常用方法3、Iterator迭代器二、泛型1、泛型的定义与使用2、含有泛型的方法3、含有泛型的接口4、泛型通配符一、Collection集合1、集合框架合按照其存储结构可以分为两大类,分别是单列集合`java.util.Collection`和双列集合`java.util.M...翻译 2019-06-25 21:50:30 · 526 阅读 · 0 评论 -
Java之List、Set与Collections
目录一、List集合1、List接口介绍2、List接口中常用方法二、List的子集1、ArrayList集合2、LinkedList集合三、Set接口1、HashSet集合介绍2、HashSet集合存储数据的结构(哈希表)3、HashSet存储自定义类型元素4、LinkedHashSet四、Collections1、常用操作2、简述Co...翻译 2019-06-25 23:08:56 · 354 阅读 · 0 评论 -
Stream流和方法引用(Java8新特性)
目录一、Stream流1、引言2、流式思想概述3、获取流4、常用方法二、方法引用1、冗余的Lambda场景2、方法改进3、方法引用符4、通过对象名引用成员方法5、通过类名称引用静态方法6、通过super引用成员方法7、通过this引用成员方法8、类的构造器引用9、数组的构造器引用一、Stream流1、引言...翻译 2019-07-01 15:21:52 · 486 阅读 · 0 评论 -
Java之Map
目录一、Map集合1、概述2、Map 常用子类3、Map 接口中的常用方法4、Map 集合遍历键找值方式5、Entry 键值对对象6、Map 集合遍历键值对方式7、HashMap 存储自定义类型键值8、LinkedHashMap二、模拟斗地主洗牌发牌一、Map集合1、概述Map 接口下的集合与 Collection 接口下的集合,它们存...翻译 2019-06-26 11:48:10 · 271 阅读 · 0 评论 -
方法的重载与重写
1、重写 重写发生在子类与父类当中,子类继承父类的方法后,可以根据需要进行修改,变成自己所需要的方法,此即重写。2、重载 重载是指同一个类中可以有若干个同名的方法,只要方法的参数列表不同,(包括参数的个数不同,参数的类型不同,参数的顺序不同)和方法的返回值类型没有关系。重载方法的调用:JVM根据方法的参数列表调用不同的方法。package com.dzg...原创 2019-06-23 11:19:24 · 103 阅读 · 0 评论 -
Java中常用的API
1、Scanner类一个简单的文本扫描器,可以使用正则表达式解析原始类型和字符串。 A Scanner分隔符模式将输入打破到令牌,默认情况下匹配空格。 然后可以使用各种next方法将得到的令牌转换成不同类型的值。 例如,该代码允许用户从System.in读取一个数字: Scanner sc = new Scanner(System.in); int i = s...翻译 2019-06-23 17:31:03 · 107 阅读 · 0 评论 -
Java之异常与线程
目录一、异常1、异常概念2、异常体系3、异常分类二、异常的处理1、抛出异常throw2、声明异常throws3、try...catch...finally三、自定义异常四、多线程1、并发与并行2、进程与线程3、创建线程类4、多线程原理五、线程安全1、线程同步六、线程的状态1、线程状态概述七、线程池1、线程池概念2、...翻译 2019-06-27 14:30:17 · 645 阅读 · 0 评论 -
Java8之Lambda表达式
目录1、函数式编程思想概述2、冗余的Runnable代码3、体验Lambda的更优写法4、回顾匿名内部类5、Lambda标准格式6、练习使用Lambda的标准格式7、Lambda的参数和返回值8、Lambda省略格式9、Lambda使用前提1、函数式编程思想概述2、冗余的Runnable代码代码分析:对于 Runnable 的匿名...翻译 2019-06-27 16:44:08 · 412 阅读 · 0 评论 -
Java之字节流和字符流
目录一、IO概述1、什么是IO2、IO分类3、IO的流向说明图解二、字节流1、字节输出流OutputStream2、字节输入流InputStream三、字符流1、字符输入流Reader2、字符输出流Writer四、IO异常处理一、IO概述1、什么是IO我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为 输入i...翻译 2019-06-28 21:54:04 · 352 阅读 · 0 评论 -
Java之缓冲流、转换流、序列化流
目录一、缓冲流1、概述2、字节缓冲流3、字符缓冲流二、转换流1、字符编码和字符集2、编码引出的问题3、InputStreamReader类4、OutputStreamReader类5、练习:转换文件编码三、序列化1、概述2、ObjectOutputStream类3、ObjectInputStream类四、打印流一、缓冲流...翻译 2019-06-28 23:45:42 · 181 阅读 · 0 评论 -
网络编程
一、网络编程入门1、软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。2、网络通信协议3、协议分类4、网络编程三要素二、TCP通信程序1、概述2、Socket...翻译 2019-06-29 18:11:01 · 113 阅读 · 0 评论 -
Spring学习三——动态代理与AOP
day3......一、数据库转账之--事物分析事物控制应该都是在业务层实现类中以下操作应当只有一个Connection控制事务: 1)首先设置自动提交为手动提交,即开启事务; 2)执行具体的操作; 3)根据需要,返回必要的数...翻译 2019-07-05 18:38:39 · 150 阅读 · 0 评论 -
Sping学习四——JdbcTemplate与事务控制
目录一、Spring中的JdbcTemplate二、作业分析1)基于XML的AOP配置2)基于注解的AOP实现事务控制三、Spring的声明式事务控制1、spring中事务控制的一组API2、spring中基于xml的声明式事务控制----配置步骤3.spring中基于注解的声明式事务控制day4.....一、Spring中的JdbcTemplate...翻译 2019-07-05 19:14:30 · 517 阅读 · 0 评论 -
函数式接口
目录一、函数式接口1、概念2、格式3、@FunctionalInterface注解4、自定义函数式接口二、函数式编程1、Lambda的延迟执行2、使用Lambda作为参数和返回值三、常用函数式接口1、Supplier接口2、Consumer接口3、Predicate接口4、Function接口一、函数式接口1、概念2、格式...翻译 2019-06-30 23:13:45 · 384 阅读 · 0 评论 -
Java抽象类概述
1,抽象类与抽象方法概念抽象类用来描述一种类型应该具备的基本特征与功能, 具体如何去完成这些行为由子类通过方法重写来完成,如:犬科均会吼叫,但属于犬科的狼与狗其吼叫内容不同。所以犬科规定了有吼叫功能,但并不明确吼叫的细节。吼叫的细节应该由狼与狗这样的犬科子类重写吼叫的方法具体实现。即抽象方法指只有功能声明,没有功能主体实现的方法。具有抽象方法的类一定为抽象类。那么犬科就可以定义为抽象类...转载 2019-07-15 23:10:50 · 152 阅读 · 0 评论 -
常见数据加密与解密方式
目录一、对称加密1、凯撒加密算法:位偏移2、byte 和 bit3、常见的对称加密算法4、工作模式和填充模式5、对称加密应用实战二、非对称加密6、非对称加密算法7、非对称加密RSA的分段加密8、非对称加密RSA的分段解密9、RSA非对称加密/解密保存秘钥对 10、非对称加密RSA特点三、消息摘要11、消息摘要算法介绍12、消息摘要MD5的...原创 2019-08-18 22:13:42 · 4252 阅读 · 0 评论 -
Java内的final关键字
在继承中,子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承API中提供的类,改写其内容呢?显然这是不合适的。为了避免这种随意改写的情况,Java提供了 final 关键字,用于修饰不可改变内容。final : 不可改变。可以用于修饰类、方法和变量。类:被修饰的类,不能被继承。方法:被修饰的方法,不能被重写。变量:被修饰的变量,不能被重新赋值。...原创 2019-06-25 14:59:00 · 253 阅读 · 0 评论 -
Java三大特性之封装、继承、多态
目录一、继承1、定义2、继承的特点1)成员变量2)成员方法3)构造方法二、抽象类三、多态四、接口1、接口的概述:2、接口内的方法3、接口的实现4、接口内的其他成员的特点五、封装一、继承1、定义 就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。子类与...翻译 2019-06-25 14:43:00 · 390 阅读 · 0 评论 -
12代理模式——静态和动态
一、什么是代理模式 Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以控制对这个对象的访问。 所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标类交互,而代理一般在交互的过程中(交互前后),进行某些特别的处理。二、代理模式的结构三、代理模式的角色及职责subject(抽...原创 2019-05-04 00:04:00 · 149 阅读 · 0 评论 -
13外观模式
一、什么是外观模式Facade模式也叫外观模式,是由GoF提出的23种设计模式中的一种。Facade模式为一组具有类似功能的类群,比如类库,子系统等等,提供一个一致的简单的界面。这个一致的简单的界面被称作facade。二、外观模式的结构三、外观模式的角色和职责Facade :为调用方定义简单的调用接口。Clients : 调用者。通过Facade接口调用...原创 2019-05-04 09:29:32 · 104 阅读 · 0 评论 -
04工厂模式方法实例实现——计算器
一、面向过程的方法采用传统的面向过程方法,实现一个简单的计算器——加减乘除的功能,只需要按照顺序,一步一步实现即可其中除以0的情况未处理!public class MainClass { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); ...原创 2019-04-28 20:16:04 · 1270 阅读 · 0 评论 -
03抽象工厂模式
一、抽象工厂模式:抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。二、产品族和产品等级结构三、模式中包含的角色及其职责1.抽象工厂(Creator)角色 : 抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。2....原创 2019-04-27 23:17:39 · 129 阅读 · 0 评论 -
14组合模式
一、什么是组合模式Composite模式也叫组合模式,是构造型的设计模式之一。通过递归手段来构造树形的对象结构,并可以通过一个对象来访问整个对象树。二、组合模式的结构三、组合模式的角色和职责Component (树形结构的节点抽象):- 为所有的对象定义统一的接口(公共属性,行为等的定义)- 提供管理子节点对象的接口方法- [可选]提供管理父节点对象的接口方法Le...原创 2019-05-04 15:12:25 · 192 阅读 · 0 评论 -
05单例模式
一、什么是单例模式1.定义:单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。2.核心思想:保证一个类只有一个实例,并且提供对该实例加以访问的全局访问方法。二、为什么使用单例模式在应用系统开发中,我们常常有以下需求:1) 在多个线程之间,比如servlet环境,共享同一个资源或者操作同一个对象...原创 2019-04-29 22:28:36 · 80 阅读 · 0 评论 -
06原型模式
一、什么是原型模式Prototype模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建的实例,具有与原型一样的数据。二、原型模式的特点1. 由原型对象自身创建目标对象。也就是说,对象创建这一动作发自原型对象本身。2.目标对象是原型对象的一个克隆。也就是说,通过Prototype模式创建的对象,不仅仅与原型对象具有相同的结构,还与原...原创 2019-04-30 19:57:56 · 90 阅读 · 0 评论 -
07建造者模式
一、什么是建造者模式Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种。Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。二、建造者模式结构 其中建造者时一个公共接口,提供构造的方法;具体的建设者实现建设者接口,提供一个全局的获取建...原创 2019-04-30 22:09:48 · 107 阅读 · 0 评论 -
08装饰模式
一、什么是装饰模式 装饰( Decorator )模式又叫做包装模式。通过一种对客户端透明的方式来扩展对象的功能,是继承关系的一个替换方案。二、装饰模式的结构一环套一环!继承、关联(传参)三、装饰模式的角色和职责1)抽象组件角色: 一个抽象接口,是被装饰类和装饰类的父接口。2)具体组件角色:为抽象组件的实现类。3)抽象装饰角色:包含一个组件的引用,并定义了与抽象组...原创 2019-04-30 23:43:33 · 101 阅读 · 0 评论 -
09策略模式
一、什么是策略模式Strategy模式也叫策略模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换 。二、策略模式结构Sstrategy是一个公共的接口,有且仅有一个;具体的实现策略可以有若干个;Context提供一个...原创 2019-05-01 13:43:34 · 137 阅读 · 0 评论 -
10观察者模式
一、什么是观察者模式Observer模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。Observer模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持状态同步。二、观察者模式结构三、观察者模式角色及其职责Subject(被观察者) : 被观察的对象。当需要被观察的状态发生变化时,需要通...原创 2019-05-01 15:36:46 · 124 阅读 · 0 评论 -
XML学习一
1.eXtensible MarkUp Language* 可扩展标记性语言*用途:存储数据2.XML用途*不同系统之间数据的传输*有利于提高数据的维护性3.XML语法 1)xml的文档声明:<?xml version="1.0" encoding="utf-8" ?> 写在第一行第一列 ios8859-1(不包含中文的编码方式)...原创 2019-05-14 19:09:59 · 128 阅读 · 0 评论 -
泛型和枚举
1.泛型的简介在泛型中写的是一个对象,不能是基本的数据类型(写起对应的包装类)*List遍历方式:for循环、迭代器、增强for*set遍历方式:迭代器、增强for(元素无序、不能重复出现)*在map上使用泛型 Map(key,value) 遍历方式:1)获取所有的key,通过key得到value,使用get方法 2)获取k...原创 2019-05-16 16:35:18 · 1355 阅读 · 0 评论 -
Java反射
1.反射的原理 **应用在一些通用性较高的代码中 **框架中大多使用反射 **在框架中,都是基于配置文件的开发 在配置文件中配置类,通过反射得到类中的所有内容,可以让类中的某个方法执行 类中所有的内容:属性、无参构造函数、有参数构造函数、普通方法2.使用反射操作类中无参数构造方法1)2)3)4)操作私有...翻译 2019-05-16 19:17:59 · 68 阅读 · 0 评论 -
Spring学习一
day1...一、spring概述(了解)1.spring是什么 2.spring优势3.spring体系结构二、程序的耦合及解耦Class.forName("com.mysql.jdbc.Driver") 工厂模式结构,删除对应的类,程序虽然无法运行,但是仍能编译三、IOC的概念和spring中的IOC1.I...翻译 2019-05-26 13:21:18 · 166 阅读 · 0 评论 -
11享元模式
一、什么是享元模式 Flyweight模式也叫享元模式,是构造型模式之一,它通过与其他类似对象共享数据来减小内存占用。二、享元模式结构...原创 2019-05-03 21:47:35 · 91 阅读 · 0 评论