摘要: 不想看下面的,直接看这里直接总结: 序列化是指把一个Java对象变成二进制内容,本质上就是一个byte[]数组。 为什么要把Java对象序列化呢?因为序列化后可以把byte[]保存到文件中, 或者把byte[]通过网络传输到远程,这样,就相当于把Java对象存储到文件或者通过网络传输出去了。 有序列 阅读全文
posted @ 2020-12-20 20:13 乃颜先生 阅读(811) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序 插入排序 快速排序 选择排序 希尔排序 归并排序 堆排序 计数排序 桶排序 基数排序 阅读全文
posted @ 2020-12-19 22:06 乃颜先生 阅读(91) 评论(0) 推荐(1) 编辑
摘要: 单例模式(Singleton) 构建模式(Builder) 抽象工厂模式(Abstract Factory) 工厂方法模式(Factory Method) 观察者模式(Observer) 模板方法模式(Template Method) 装饰者模式(Decorator) 代理模式(Proxy) 阅读全文
posted @ 2020-12-19 22:04 乃颜先生 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 二叉树 二叉查找树 平衡二叉树B树 平衡查找树之AⅥL树 平衡二叉树之红黑树 B+树 B*树 阅读全文
posted @ 2020-12-19 22:02 乃颜先生 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 1.一共有八大数据结构分类 a.数组 b.栈 c.队列 d.链表(单链表、双向链表、循环链表) c.数 f.散列表 g.堆 h.图 如图: 1、数组 数组是可以再内存中连续存储多个元素的结构,在内存中的分配也是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。例如下面这段代码就是将数组的第 阅读全文
posted @ 2020-12-19 21:07 乃颜先生 阅读(4301) 评论(1) 推荐(1) 编辑
摘要: 它们的区别: 说下栈内存 栈内存首先是一片内存区域,存储的都是局部变量 凡是定义在方法中的都是局部变量(方法外的是全局变量),for循环内部定义的也是局部变量 是先加载函数才能进行局部变量的定义,所以方法先进栈,然后再定义变量,变量有自己的作用域,一旦离开作用域,变量就会被释放。 栈内存的更新速度很 阅读全文
posted @ 2020-12-19 20:49 乃颜先生 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 1.Java的动态代理技术的实现主要有两种方式: 1.1 JDK原生动态代理 1.2 CGLIB动态代理 2.JDK原生动态代理是Java原生支持的,不需要外部依赖,但是它只能基于接口进行代理(需要动态代理的对象必须实现与某个接口) 3.CGLIB通过继承的方式进行代理,(让需要代理的类成为Enha 阅读全文
posted @ 2020-12-19 20:41 乃颜先生 阅读(1648) 评论(0) 推荐(0) 编辑
摘要: Throw: 作用在方法内,表示抛出具体异常,由方法体内的语句处理。 具体向外抛出的动作,所以它抛出的是一个异常实体类。若执行了Throw一定是抛出了某种异常。 Throws: 作用在方法的声明上,表示如果抛出异常,则由该方法的调用者来进行异常处理。 主要的声明这个方法会抛出会抛出某种类型的异常,让 阅读全文
posted @ 2020-12-15 11:53 乃颜先生 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 装饰模式概述 在我们今天所学的缓冲流中涉及到java的一种设计模式,叫做装饰模式,我们来认识并学习一下这个设计模式。 装饰模式指的是在不改变原类, 不使用继承的基础上,动态地扩展一个对象的功能。 装饰模式遵循原则: 装饰类和被装饰类必须实现相同的接口 在装饰类中必须传入被装饰类的引用 在装饰类中对需 阅读全文
posted @ 2020-12-14 14:47 乃颜先生 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 1 面试题:Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?可以的,启动dubbo时,消费者会从zk拉取注册的生产者的地址接口等数据,缓存在本地。每次调用时,按照本地存储的地址进行调用 注册中心对等集群,任意一台宕掉后,会自动切换到另一台注册中心全部宕 阅读全文
posted @ 2020-12-13 20:26 乃颜先生 阅读(213) 评论(0) 推荐(0) 编辑