随笔分类 -  Java

摘要:## 类加载器 ### 1、介绍 类加载器,加载类到JVM中。主要做的寻找类,通过将完整类名映射成相应的目录,按照目录进行搜索。尝试使用当前的类加载器,如果加载不到,再使用父加载器加载,否则再向上找。 类加载过程是使用当前类的类加载加载指定的类的,如果加载不到,再使用上级类加载器进行加载。 ### 2、java ClassLoader java类加载时三级类加载机制,分别是: - Bo... 阅读全文
posted @ 2018-09-16 10:53 大道至简(老徐) 阅读(260) 评论(0) 推荐(0)
摘要:## 设计模式 ### 1、介绍 GOF是Gang of four(四人帮)的简称,是由四位java业界的专家编写的针对特定场景下问题的专家级解决方案。大概包含23中设计模式,设计模式本身与技术没有太大关系,主要是设计思想的运用,比较著名的像单例模式、工厂模式等。本文不打算给出所有设计模式的说明,主要给出实际应用较普遍的几种且比较经典的设计模式。 ### 2、单例模式 单例模式是最经典的设... 阅读全文
posted @ 2018-09-08 11:45 大道至简(老徐) 阅读(361) 评论(0) 推荐(0)
摘要:## 多线程 ### 1、介绍 线程是同一进程内同时执行的多个代码段。宏观上并行,微观上串行,对于每块CPU来说,同一时刻,CPU只能执行同一条指令,但是对于多核系统来说,可以做到真正的并行。线程间可以共享内存,进程间不能共享内存。 ### 2、创建线程的方式 创建线程的方式有两种,可以通过Thread类直接创建,也可以通过实现Runnable接口,传递给Thread构造函数来创建。后者可... 阅读全文
posted @ 2018-09-05 20:54 大道至简(老徐) 阅读(281) 评论(0) 推荐(0)
摘要:## 集合、数据结构、时间复杂度 ### 1、集合 #### 1.1 概述 java集合分为三种类型,List、set和Map。List有序,可以重复。Set无序不重复。Map是Key-value对类型,其中Key具有set的特点。 #### 1.2 List List java中有ArrayList和LinkedList两种实现。 - ArrayList 通过数组来实现,擅长读... 阅读全文
posted @ 2018-09-05 20:05 大道至简(老徐) 阅读(1371) 评论(0) 推荐(0)
摘要:## 基本数据类型-位运算-字符集-流 ### 1、基本类型 | 类型 | 字节数 | 范围 | | :-----: | :--: | :------------------------: | | byte | 1 | -128 ~ 127 | | short | 2 | ... 阅读全文
posted @ 2018-09-05 20:04 大道至简(老徐) 阅读(277) 评论(0) 推荐(0)
摘要:## Java中的字符集### 1、字符集概述字符集是各国家文字与字符编码对照表。字符可以看成是计算机中展示的图案效果,每个字符集都对每一种图案进行编码,有着一对一的对应关系。因此进行字符输出时,都需要指定使用哪一种字符集作为参考。不同字符集使用不同的字节数和范围来存储相应的字符。常用字符集有ascii、gb2312、gbk、iso8859-1、utf-8、unicode、big5等。### 2、... 阅读全文
posted @ 2018-08-27 20:37 大道至简(老徐) 阅读(1631) 评论(0) 推荐(0)
摘要:## 时间复杂度 ### 1、时间频度 时间复杂度通常是衡量算法的优劣的,衡量算法的时间严格来讲是很难衡量的,由于不同的机器性能不用环境都会造成不同的执行时间。算法的执行时间和语句的执行次数成正比,因此通过计算执行测试来推断执行时间。算法中语句执行次数称为语句频度或时间频度,记为T(n),n是问题的规模,T是Time,即时间频度。 ### 2、时间复杂度 n不断变化时,T(n)也在不断变化,为... 阅读全文
posted @ 2018-08-27 20:36 大道至简(老徐) 阅读(1435) 评论(0) 推荐(0)
摘要:## 关于java中的hashcode和equals方法原理 ### 1、介绍 java编程思想和很多资料都会对自定义javabean要求必须重写hashcode和equals方法,但并没有清晰给出为何重写此两个方法,至少不是非常的明确。 首先要确定的一件事是并不是“必须”,估计跟中英文语言习惯有关。hashcode方法只有在和hash类型的集合(比如HashMap和HashSet)配合使用... 阅读全文
posted @ 2018-08-27 18:14 大道至简(老徐) 阅读(1747) 评论(0) 推荐(0)
摘要:## JVM ### 1、JVM Runtime data area,运行时数据区。包含5个区域,分别为method area、heap、java stack、native method stack、program counter register。 图示如下: ![java_pro_018](http://www.it18zhang.com/images/blog/xpc_java_pr... 阅读全文
posted @ 2018-08-27 18:13 大道至简(老徐) 阅读(426) 评论(0) 推荐(0)
摘要:## 数据结构 ### 1、描述 数据结构是指数据存储结构方式。大致上分为线性表、栈、队列、树、图。 ### 2、线性表 #### 2.1 数组 数组是连续的内存存储区。读取速度非常快。 #### 2.2 链表 链表在java中的实现是LinkedList,内部使用引用的方式来实现,集合内不同通过Node来实现,有指向上家和下家的指针,每个节点上关联了元素。列表存放了first和... 阅读全文
posted @ 2018-08-27 18:12 大道至简(老徐) 阅读(410) 评论(0) 推荐(0)