替换URL
This commit is contained in:
parent
2d1e90f253
commit
0acdfb8190
@ -6,7 +6,7 @@
|
||||
* 继承:继承是类与类的一种关系,比较像集合中的从属于关系。
|
||||
* 封装:隐藏类的基本信息,不允许外部程序直接访问,而是通过该类的方法实现对隐藏信息的操作和访问。
|
||||
* 多态:方法的重写、重载与动态连接构成多态性;
|
||||
* 面向对象的六大原则 【参考[设计模式](http://www.zeekling.cn/gogs/zeek/designPattern/src/master/principle)】
|
||||
* 面向对象的六大原则 【参考[设计模式](https://git.zeekling.cn/java/designPattern/src/branch/master/principle)】
|
||||
* 单一职责原理:一个类只负责一项职责。
|
||||
* 里氏替换原则:劲量不要重写父类的已经实现了的方法,可以用接口等其他方法绕开。
|
||||
* 依赖倒置原则:高层模块不应该依赖底层模块,二者应依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。
|
||||
@ -25,7 +25,7 @@
|
||||
* 弱引用:用来描述非必须的对象,但是它的强度比软引用更弱一些,被弱引用关联的对象只能生存到下一次垃圾收集发送之前。
|
||||
* 虚引用:虚引用也称为幽灵引用或者幻影引用,它是最弱的一种引用关系。一个持有虚引用的对象,和没有引用几乎是一样的,随时都有可能被垃圾回收器回收。
|
||||
* java集合
|
||||

|
||||

|
||||
* Collection:集合类的根接口,list和set都继承自此接口
|
||||
* List:有序,可以重复,一般用index标示顺序
|
||||
* LinkedList:底层用双链表实现:增加删除效率高
|
||||
@ -43,11 +43,11 @@
|
||||
* HashMap:非同步、线程不安全,一般不要求线程安全的情况下建议使用
|
||||
* LinkedHashMap: 是HashMap+LinkedList,即它既使用HashMap操作数据结构,又使用LinkedList维护插入元素的先后顺序。
|
||||
java 7 hashmap实现原理
|
||||

|
||||

|
||||
java8 实现原理
|
||||

|
||||

|
||||
* ConcurrentHsahMap:可以用来代替HashTable,而且比HashTable的扩展性好。
|
||||

|
||||

|
||||
* TreeMap:是一个有序的key-value集合,它是通过红黑树实现的。是SortedMap的一个实现类
|
||||
* WeakHashMap:
|
||||
* IdentifyHashMap:
|
||||
@ -59,7 +59,7 @@
|
||||
* CountDownLatch:可以用来在一个线程中等待多个线程完成任务的类
|
||||
* Vector
|
||||
* io流
|
||||

|
||||

|
||||
* 根据处理数据的类型
|
||||
* 字节流:字节流因为操作的是字节,所以可以用来操作媒体文件。
|
||||
* 字符流:字符流中的对象融合了编码表,也就是系统默认的编码表。我们的系统一般都是GBK编码。字符流只用来处理文本数据,字节流用来处理媒体数据。
|
||||
@ -70,7 +70,7 @@
|
||||
* 对象序列化
|
||||
* NIO(非阻塞IO)
|
||||
* IO和NIO的区别
|
||||

|
||||

|
||||
* AIO (异步IO)
|
||||
|
||||
* 多线程
|
||||
@ -144,9 +144,9 @@ java虚拟机我看过周志明的《深入理解java虚拟机》和周志明等
|
||||
* 元空间:1.8引入的,用来替换方法区(永久代);不再虚拟机中,使用的是本地内存,取决于电脑的内存大小
|
||||
***内存结构图***
|
||||
1.7及以前版本java内存分布图:
|
||||

|
||||

|
||||
1.8 内存分布图:
|
||||
<br>
|
||||
<br>
|
||||
* 对象
|
||||
* 对象的创建
|
||||
* 对象的内存布局
|
||||
@ -159,9 +159,9 @@ java虚拟机我看过周志明的《深入理解java虚拟机》和周志明等
|
||||
* 指针方式访问(hotspot 虚拟机用的就是指针方式访问):指针访问方式访问方式比句柄方式快,节省一次指正定位带来的时间开销。
|
||||
* 句柄方式访问(其他虚拟机):句柄池中存放的是稳定的句柄,当对象被移动时,只需要改变句柄的实例数据就行,不需要改变reference本身的值。
|
||||
***普通对象的内存分布***
|
||||

|
||||

|
||||
***数组对象的内存分布***
|
||||

|
||||

|
||||
* 垃圾回收
|
||||
* 判断对象已死
|
||||
* 引用计数法(无法判断循环引用的对象是否已死):每个对象都有一个引用计数器,对象每被引用一次就加1,对象被释放就减1,引用计数为0表示可以被回收。
|
||||
|
Loading…
x
Reference in New Issue
Block a user