随笔分类 - Java基础
摘要:java -cp jar包 类名
阅读全文
摘要:原文地址-https://tech.meituan.com/2016/06/24/java-hashmap.html HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进
阅读全文
摘要:原文地址-https://www.cnblogs.com/chengxiao/p/6059914.html HashMap实现原理及源码分析 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的
阅读全文
摘要:1 打开jdk设置,找到具体添加的地方 2 找到自己jdk的源码位置替换掉 3 如果没有源码或者源码没有下载解压,自己下载解压,Mac下安装的自带src.zip和javax-src.zip解压好后,再添加 4 自带的jdk的zip包里面没有1.8的sun包,自己可以到csdn或者其他第三方下载一个带
阅读全文
摘要:NoClassDefFoundError是一个错误(Error),而ClassNOtFoundException是一个异常,在Java中对于错误和异常的处理是不同的,我们可以从异常中恢复程序但却不应该尝试从错误中恢复程序。 要区分这两个异常,先要了解类装载的显式和隐式两种方式 类装入的方式有两种 —
阅读全文
摘要:1 代码如下 2 原理图 3 源码分析 put方法入口调用 super的put方法 然后调用putVal方法 因为evict为true,插入节点后都会调用afterNodeInsertion方法,当数据超出Hashmap的容量的时候,会滴啊用removeNode方法,移除head节点数据 源码中的最
阅读全文
摘要:1 代码片段 2 建议的三种模板 A 第一种,采用Apache的common.lang3的新建方式 B 第二种,采用线程池工厂的方式 C 第三种,采用Spring配置xml文件,配置线程池工厂 3 建议的原因 按照直接的Executors方式创建线程池,下面提示了两种情况,当大量的请求过来,会造成O
阅读全文
摘要:加上 @Deprecated 后方法名称显示: 中划线(删除线)意为:发生这些变化并不会影响编译,只是提醒一下程序员,这个方法以后是要被删除的,最好别用。就是如果一个类从另外一个类继承,并且override被继承类的Deprecated方法,在编译时将会出现一个警告。
阅读全文
摘要:同步 和 异步区别 同步和异步通常用来形容一次方法的调用。 同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。而异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。 并发 和 并行区别 并发和并行是两个非常容易被混淆的概率。它们都可以表示两
阅读全文
摘要:多线程 什么是线程?进程:可以简单理解成就是一个应用程序. 多个线程组成了一个进程. 进程与进程之间不可能进行通信,但是同一个进程中的线程可以进行通信.我们使用多线程 程序目的就是为了提高效率. 多线程程序相当于拥有多条通路去执行。 JVM在启动时是单线程还是多线程的?JVM在启动时是多线程。一共启
阅读全文
摘要: IP地址和端口IP地址:是计算机在网络中的唯一标示,我们在进行网络编程时一定要定位到远程计算机,而IP地址就是解决这个问题的。端口:除了计算机外我们还要定位到具体的应用程序进程,而端口就是给应用程序分配的身份标示。UDP和TCPUDP:1,每个数据报中都给出了完整的地址信息,因此无需要建立发
阅读全文
摘要:TCP网络编程 与UDP不同的是TCP是通过客服端和服务端的方式来传输数据的。客服端:public class TCPClient { /** * @param args * @throws IOException * @throws UnknownHostException */ public s
阅读全文
摘要:目的:是为了开发时可以明确具体使用哪个流对象更为合适: 明确一:数据的源或目的(汇);源:对应的就是读取,读取对应就是两个体系;InputStream Reader目的:对应的就是写入;写入对应的两个体系;OutputStream Writer明确二:操作的数据是否为纯文本。源:是纯文本文件,Rea
阅读全文
摘要:作为一个理论性比较强的学生,谈一下这段时间对java以及对程序设计的理解 java相对于其它语言有几个特点,一个是面向对象,一个是强类型 首先谈谈面向对象,关于类和对象,这个一定要有深刻的认识,在类中,首先一个最重要的概念就是构造方法,为什么说它重要,就是因为你只要需要创建一个类地实例对象就需要调用
阅读全文
摘要: 字节流: 抽象基类:InputStream, OutputStream。 字节流可以操作任何数据。注意:字符流使用的数组是字符数组。Char [] chs 字节流使用的数组是字节数组。Byte [] bt 转换流: 特点:1,是字节流和字符流之间的桥梁。 2,该流对象中可以对读取到的字节数据进行
阅读全文
摘要: IO流继承关系图 IO概述 IO流是用来处理设备上数据的输入输出。 具体设备有:硬盘,内存,键盘录入等等。 IO流的具体分类: 1,根据处理的数据类型不同分为:字节流和字符流,字节流读取的最小单位是一个字节(1byte=8bit),而字符流一次可以读取一个字符(1char=2byte=16bit
阅读全文
摘要: Reader |--InputStreamReader |--FileReader:专门用于处理文件的字符读取流对象 Writer |--OutputStreamWriter |--FileWriter:专门用于处理文件的字符写入流对象。 Reader中的常见的方法: 1,int read():
阅读全文
摘要:泛型 泛型是在定义类或者接口时指定类型形参,这个形参在声明变量或创建对象时确定。泛型其实是应用在编译时期的技术,用于检测所操作的引用数据的类型,提高了程序的安全性。如果我们需要在类的方法中,接收任意且相同类型的两个参数,利用前边所学的知识,我们只能将参数类型定义为Object。当传入参数时,虽然可以
阅读全文
摘要:关于迭代器 Iterator(迭代器)是一个专门用于取出Collection集合中元素的接口,它以内部类的方式封装在Collection接口的实现类中,根据Collection接口各个实现类的数据结构不同,有着不同实现方式。而在Collection接口中定义取出Iterator对象的抽象方法。迭代器
阅读全文
摘要: 按照上面的图一一介绍 关于集合的概述 集合是一个能够存储对象并且可变长度的容器。在Java中,就此需求提供了一套相当完整的容器类库,它们就是集合类。 集合类由于内部数据结构(存储对象的方式)不同,在Java中,将其分为了许多类与接口,它们各司其职。这些集合大体可以分为两类:单列集合与双列集合。单
阅读全文