java 基础知识点学习
自己几年来学习java,零零散散,从来没有系统的,深度的了解一个知识点,java不能只会用,不然无法接触到深层次的东西,所以,开辟此栏,对每个知识点系统的总结,加深了解,更多的是面试的点
被忘记的默客
一个快把大哥气死的小弟,Let me see
展开
-
Tomcat发布项目 端口号配置
修改Tomcat服务中的端口配置: 分别修改安装目录下的conf子目录中的server.xml文件(注意:两个文件中对应的端口号要不一样),修改如下 :a、修改Shutdown端口(默认为8005端口),将8005修改为没有在使用的端口号,例如8055。 <Server port="8005" shutdown="SHUTDOWN" debug="0">b、修改http访问端口(默认为8080端口),将8080修改为tomcat不在使用的端口号。此处所设的端口号即是以...转载 2020-08-25 15:23:19 · 1102 阅读 · 0 评论 -
java8新特性 stream、lambde、optional
一、stream: stream() − 为集合创建串行流。 parallelStream() − 为集合创建并行流。 forEachStream 提供了新的方法 'forEach' 来迭代流中的每个数据。以下代码片段使用 forEach 输出了10个随机数:Random random = new Random();random.ints().limit(10)....原创 2018-06-28 19:39:29 · 352 阅读 · 0 评论 -
谈谈java中遍历Map的几种方法
java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点先初始化一个mappublic class TestMap { public static Map<Integer, Integer> map = new HashMap<Integer, Integer>...转载 2018-06-28 09:25:56 · 200 阅读 · 0 评论 -
BIO与NIO、AIO的区别
IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。BIO是一个连接一个线程。NIO是一个请求一个线程。AIO是一个有效请求一个线程。同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写);异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码)...原创 2018-06-27 20:06:09 · 223 阅读 · 0 评论 -
Hashmap如何实现key的唯一性
Map和Set不可存在重复元素1 对于 HashMap HashSet 的实现是:维护了一张 HashTable 。容器中的元素全部存储在Hashtable 中,每次添加元素都会先判断是否有重复的元素,hashcode()方法进行比较,若一样再equals()方法比较,他们的底层数据结构如果也相同的话,JVM就认为数据已经存在了,就不会添加数据!2 对于 TreeMap TreeSet他们...原创 2018-06-27 19:56:59 · 5201 阅读 · 1 评论 -
hashcode()和equals()
浅显的总结了些,深入无法理解Java中的hashCode方法就是根据一定的规则将与对象相关的信息(比如对象的存储地址,对象的字段等)映射成一个数值,这个数值称作为散列值设计hashCode()时最重要的因素就是:无论何时,对同一个对象调用hashCode()都应该产生同样的值。如果在讲一个对象用put()添加进HashMap时产生一个hashCdoe值,而用get()取出时却产生了另一个hashC...原创 2018-06-27 17:42:41 · 638 阅读 · 0 评论 -
'=='与equals 的区别
=操作符专门用来比较变量的值是否相等。比较好理解的一点是: int a=10; int b=10; 则a==b将是true。 但不好理解的地方是: String a=new String( "foo "); String b=new String( "foo "); 则a==b将返回false。 对象变量其实是一个引用,它们的值是指向对象所在的内存地址,而不是对象本身。a和...原创 2018-06-27 11:45:07 · 183 阅读 · 0 评论 -
tomcat部署项目有哪几种方式?
1、直接将web项目文件件拷贝到webapps目录中 (打war包,war包是需要tomcat的)Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到。2...原创 2018-06-27 11:05:40 · 1119 阅读 · 0 评论 -
list、set、map的区别
(图一)1.面试题:你说说collection里面有什么子类。(其实面试的时候听到这个问题的时候,你要知道,面试官是想考察List,Set)正如图一,list和set是实现了collection接口的。 (图二...转载 2018-03-13 14:32:12 · 169 阅读 · 0 评论 -
json对象与 js对象的区别
JSON是什么?(JSON和JavaScript对象有什么区别?)如何把JS对象转化为JSON字符串,又如何把JSON字符串转化为JavaScript对象?JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具原创 2018-01-09 10:17:46 · 826 阅读 · 0 评论 -
arraylist与linkedlist的区别
Arraylist是基于动态数组的数据结构,而LinkedList是基于链表对于随即访问的get,set,arraylist要强于linkedlist,因为前者直接有下标,后者是链,需要一个一个找对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。 ArrayList内部是使用可増长数组实现的,所以是用get和set方法是花费常数时间的,但是如果...原创 2018-03-13 14:18:39 · 150 阅读 · 0 评论 -
war包与jar的区别与使用以及Spring boot打包
jar包和war包所存在的原因是,为了项目的部署和发布,通常把项目打包,通常在打包部署的时候,会在里面加上部署的相关信息。这个打包实际上就是把代码和依赖的东西压缩在一起,变成后缀名为.jar和.war的文件,就是我们说的jar包和war包。 jar包中只是用java来写的项目打包来的,里面只有编译后的class和一些部署文件。而war包里面的东西就全了,包括写的代码编译成的class文...原创 2018-06-24 13:52:05 · 906 阅读 · 0 评论