JAVA基础知识
文章平均质量分 70
一只技术瞄
愿有岁月可回首,来敬年少一杯酒。
展开
-
浅拷贝和深拷贝
拷贝的引用引用拷贝引用变量拷贝:创建一个指向对象的引用变量的拷贝//引用拷贝Teacher t = new Teacher();Teacher tCopy = t;System.out.println(t);System.out.println(tCopy);com.entity.Teacher@4f023edbcom.entity.Teacher@4f023edb对象拷贝定义创建对象本身的一个副本被拷贝的对象对应的类要实现 cloneable 接口重写Object 类的原创 2021-10-16 16:46:19 · 91 阅读 · 0 评论 -
Java集合框架
JAVA集合,也称作容器,主要是由两大接口派生出来的:Collection 和 Map顾名思义,容器就是用来存放数据的。那么Collection 和Map 这两大接口的不同之处在于:Collection 存放单一元素Map 存放key-value 键值对Colleciton 接口Collection 接口有3个子接口:List 接口Queue 接口Set 接口List 接口List 最大的特点就是 **有序 ,可重复 **List 接口有3个实现:ArrayLis.原创 2021-10-14 01:22:13 · 97 阅读 · 0 评论 -
NIO总结
NIO 是跟IO相对应的,IO是阻塞式的,NIO是非阻塞的。阻塞和非阻塞如何理解呢?以线程A为例,线程A现在需要读一个文件,这就是一个IO操作,JAVA无法直接读取文件,需要调用本地方法向操作系统申请做这个事情。操作系统收到请求后就会去做这个事,在这个期间线程A就处于一个等待状态,做不了任何事情,这就是阻塞。如果线程A采用NIO的方式来读一个文件,在读取文件的过程中线程A是可以继续其他工作的。在传统IO中,数据的传输是以流的形式进行的,有各种文件流。在NIO中数据的传输是依赖缓冲区和通.原创 2021-08-09 21:50:52 · 132 阅读 · 0 评论 -
两个字符串日期比较范围
今天在改一个以前同事留下的功能时,发现比较日期字符串写得很复杂。主要是判断两个日期字符串的范围是否超过1年。因为是JS比较字符串,所以是先截取出年月日,然后依次比较年月日。写得很复杂,先判断后者年份是否大于前者,是否小于前者,是否相等,如果年份相等,则满足条件;如果大于,是否刚好差距为1,不为1则不满足条件,如果刚好为1,则一次判断月份值和日期值。代码逻辑理解起来很绕,而且还出错了。于是自己简单总结一下两种方法和可能出现的问题:转成标准日期再进行比较先将字符串转换成标准日期,再比较两者大小。Ja原创 2021-06-29 23:49:53 · 1287 阅读 · 0 评论 -
RMI远程调用
前言前段时间查代码问题时发现应用代码中接口变量指向的实例对象是Naming.lookup(xx) 返回的,但在整个应用里又找不到这个接口的实现,当时就特别好奇,后面才了解到原来就是远程调用(RMI),今天就简单了解了一下。RMI :远程方法调用(Remote Method Invocation)。能够让在某个java虚拟机上的对象像调用本地对象一样调用另一个java 虚拟机中的对象上的方法RMI远程调用步骤:1,客户对象调用客户端辅助对象上的方法2,客户端辅助对象打包调用信息(变量,方法名),通过原创 2020-12-12 19:46:12 · 519 阅读 · 0 评论 -
java集合整理-List篇
接下来会整理一下集合的几个分支,List,Set和Map。主要从以下几点分别整理:1.内部结构是怎样的2.数据如何存储,如何确定存放元素的位置,存储的时候是否会自动进行排序3.对null值的处理,4.是否支持手动排序,如何排序5.如何扩容6.是否线程安全,查找和存储的优缺点7.如何遍历和修改元素内容8.一些特殊的方法9.适用场景List家族List接口继承于Collection 接口,主要实现有ArrayList 、 LinkList、Vector 3个实现类ArryList 1原创 2020-05-28 01:03:07 · 216 阅读 · 0 评论 -
浅谈Collection、Map和Set、List、HaspMap
超级接口: Iterable包含Collection、List、Set这些子接口;只有一个方法 iterator(),返回一个在一组T类型的元素上进行迭代的迭代器 Iterator<T> iterator()Collection接口父接口:Iterable子接口:List、Set部分实现类:ArrayList、HashSet、LinkedHashSet、LinkedListCollec原创 2017-05-25 11:10:18 · 280 阅读 · 0 评论 -
关于List的复制问题
关于List 复制的问题缘由缘由今天开发自助柜面跨行转账时遇到的list的坑,从Var 中获取list 集合List&amp;lt;Map&amp;lt;String,String&amp;gt;&amp;gt; mulitilable=var.getDataValueAt(&quot;mulitilable&quot;);Iterator it=mulitiable.iterator();原创 2018-12-12 23:28:59 · 1822 阅读 · 0 评论 -
IO流总结
一、IO流简介:流的定义:流是指一连串流动的字符,是以先进先出方式发送信息的通道。按流向分:输出流:OutputStream和Writer为基类 ...转载 2018-09-09 00:09:43 · 167 阅读 · 0 评论 -
Java异常分类
Java Exception:1、Error 2、Runtime Exception 运行时异常 3、Exception 4、throw 用户自定义异常异常类分两大类型:Error类代表了编译和系统的错误,不允许捕获;Exception类代表了标准Java库方法所激发的异常。Exception类还包含运行异常类Runtime_Exception和非运行异常类Non_Runtime...转载 2018-09-08 20:54:51 · 156 阅读 · 0 评论 -
java反射常用方法
反射,是在java中非常有用,在框架中也经常接触的一种方法,所以反射是在开发中必须会的东西 所谓反射,就是给你一个XX.class文件,你通过反射方法,能够拿到该XX类相关的所有资源,比如该类所在位置,通过该类创建一个对象x,获取这个类X创建的对象x的所有公有、私有属性和公有、私有方法。这个技术你值得学习。 首先,我写了一个TestClass.java文件,作为编译成class后要使用的Tes...转载 2018-07-18 09:45:37 · 703 阅读 · 0 评论 -
JVM调优
以下配置主要针对分代垃圾回收算法而言。堆大小设置年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典...原创 2018-07-18 00:21:14 · 96 阅读 · 0 评论 -
JVM学习
Java Virtual MechineAbout JVM内存划分堆内存分配 VM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指 定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到...转载 2018-07-18 00:17:43 · 133 阅读 · 0 评论