Java基础解析
姜_白
这个作者很懒,什么都没留下…
展开
-
String StringBuffer StringBuilder
String StringBuffer StringBuilderStringStringBufferStringBuilderString StringBuilder StringBuffer的使用字符串常量池总结StringString是一个被final修饰的最终类,hash没有被final修饰,每次修改字符串都会创建对象StringBufferStringBuffer是为了解决...原创 2019-09-03 16:20:10 · 236 阅读 · 0 评论 -
Java基础-Map集合(HashMap,ConcurrentHashMap)
HashMap注:底层是由数组和链表组合构成的数据结构,数组中每一个元素都是key-value形式且数组长度是有限的,在有限的长度里面我们使用哈希,哈希本身就存在概率性,就存在hash冲突问题,出现冲突时采用链表的方式把hash冲突的元素链接起来,每一个节点都会保存自身的hash、key、value、以及下个节点。注:hashmap初始化大小长度为16(实现均匀分布)HsahMap扩容机制...原创 2020-01-10 13:51:31 · 197 阅读 · 0 评论 -
Java基础-List集合源码(ArrayList、LinkedList)
List集合ArrayList(数组集合)注:底层由数组实现,存储的元素长度可变,查询效率高,增删效率低,线程不安全。使用频率很高创建时: 通过无参构造方法的方式ArrayList()初始化,则赋值底层数Object[] elementData为一个默认空数组Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}所以数组容量为0,只有真正对数据进行添...原创 2020-01-10 10:21:48 · 140 阅读 · 1 评论 -
Java基础-容器集合(Collection)
集合(Collection)Java是一门面向对象的语言,就免不了处理对象为了方便操作多个对象,那么我们就得把这多个对象存储起来想要存储多个对象(变量),很容易就能想到一个容器常用的容器我们知道有–>StringBuffered,数组(虽然有对象数组,但是数组的长度是不可变的!)所以,Java就为我们提供了集合(Collection)~数组和集合的区别长度区别:数组长度固...原创 2020-01-09 10:51:30 · 139 阅读 · 0 评论 -
Java基础-面向对象与面向工程的区别
面向对象与面向工程的区别面向对象:易维护,易扩展,易复用,面向对象具有封装、多态、继承的特性,面向对象的程序具有更高的灵活性,更加容易维护,性能比面向过程低面向过程:性能比面向对象高(Java半编译语言,最终执行代码不是CPU直接执行的二进制机械码,面向过程直接编译为二进制机械码)...原创 2019-09-04 10:44:51 · 328 阅读 · 0 评论 -
Java基础-Java的特点(封装、继承、多态)
简单易学封装,多态,继承跨平台可靠性安全性支持多线程支持网络编程编译与解释并存原创 2019-09-04 10:53:45 · 106 阅读 · 0 评论 -
Java基础-对于JRE和JDK、JVM的简单理解
JVMJava虚拟机(JVM)运行Java字节码的虚拟机。JVM针对不同的系统的特定实现,目的使Java程序实现相同的功能采用字节码的好处?什么是字节码?JVM理解的代码字节码(.class),不面向任何处理器,只面向JVM。Java语言通过虚拟机实现了跨平台的移植,一定程度上解决了传统解释性语言效率低的问题。从源码到运行的三步.java文件(源代码)经过编译(javac).class文...原创 2019-09-04 15:18:43 · 142 阅读 · 0 评论