![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
春风十米
不积跬步无以至千里,不积小流无以成江海。加油!!!
展开
-
[java]Set集合删除元素失效问题
[java]Set集合删除元素失效问题java8javaz转自:https://segmentfault.com/a/1190000021186549引子记一次在工作当中,有这样一个业务场景: 在通过接口返回前,需要为一个set中的所有元素赋值,然后剔除掉一些不符合条件的元素,最后返回。代码结构大概如下:代码Set<Item> sets = Sets.newHashSet();sets.addAll(items);...setValue(set...转载 2020-10-14 20:17:13 · 2372 阅读 · 0 评论 -
JAVA动态代理
Java JDK动态代理Proxy类的原理是什么? - 知乎(重排版)本文转载自知乎问题Java JDK动态代理Proxy类的原理是什么?下用户@胖君回答什么是代理?先从代理开始讲。代理这种设计模式其实很好理解,基本就是最简单的一个 “组合”。比如说下面这个例子,我们有 A 这个类,本来可以直接调用 A 类的 foo() 方法。但代理模式就非要把 A 类当成 B 类的一个成员...转载 2020-04-25 22:54:13 · 166 阅读 · 0 评论 -
深入解析HashMap、HashTable
集合类之番外篇:深入解析HashMap、HashTableJava集合类是个非常重要的知识点,HashMap、HashTable、ConcurrentHashMap等算是集合类中的重点,可谓“重中之重”,首先来看个问题,如面试官问你:HashMap和HashTable有什么区别,一个比较简单的回答是:1、HashMap是非线程安全的,HashTable是线程安全的。2、Ha转载 2017-08-04 15:40:42 · 236 阅读 · 0 评论 -
浅谈Java中的hashcode方法
转自:http://www.cnblogs.com/szlbm/p/5806226.html 浅谈Java中的hashcode方法 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法:1public native int hashCode();转载 2017-08-04 11:46:41 · 184 阅读 · 0 评论 -
深入理解Java中的序列化
转自:http://blog.csdn.net/jiangwei0910410003/article/details/18989711/引言将 Java 对象序列化为二进制文件的 Java 序列化技术是 Java 系列技术中一个较为重要的技术点,在大部分情况下,开发人员只需要了解被序列化的类需要实现 Serializable 接口,使用 ObjectInputStream 和转载 2017-08-03 16:22:53 · 223 阅读 · 0 评论 -
http://blog.csdn.net/ziluolanzhang/article/details/48594523
一、System.in 使用System.in获取控制台上输入的信息,每次只能读取一个字节的数据。利用数组缓冲也可以读取字符串。[java] view plain copypackage Practice; public class ReaderConsole { public static void m转载 2017-08-26 20:25:00 · 267 阅读 · 0 评论 -
绝对路径和相对路径
转自:http://blog.csdn.net/zmx729618/article/details/51144588Java路径 Java中使用的路径,分为两种:绝对路径和相对路径。具体而言,又分为四种: 一、URI形式的绝对资源路径 如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/aaa.b URL是URI转载 2017-08-23 22:41:06 · 553 阅读 · 0 评论 -
Java-String类的常用方法总结
Java-String类的常用方法总结转自:http://www.cnblogs.com/ABook/p/5527341.html一、String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。java把String类声明的final类,不能有类。String类对象创建后不能修改,由0或多个字符转载 2017-08-29 17:06:02 · 200 阅读 · 0 评论 -
BigInteger类
这里主要是归纳了一些他人博客上的对于JAVA大数处理的一些方法.主要是BigInteger类的应用转载:http://blog.csdn.net/forebe/article/details/39256087Ⅰ基本函数: 1.valueOf(parament); 将参数转换为制定的类型 比如 int a=3; BigInteger b转载 2017-08-29 17:11:58 · 344 阅读 · 0 评论 -
Java 异常机制,异常的结构,运行时异常和非运行时异常
转自:http://blog.csdn.net/qq_27093465/article/details/52268531Java异常机制异常是程序运行过程中出现的错误。本文主要讲授的是Java语言的异常处理。Java语言的异常处理框架,是Java语言健壮性的一个重要体现。Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类转载 2017-09-22 15:28:02 · 768 阅读 · 0 评论 -
Java 泛型总结(三):通配符的使用
转自:https://segmentfault.com/a/1190000005337789简介前两篇文章介绍了泛型的基本用法、类型擦除以及泛型数组。在泛型的使用中,还有个重要的东西叫通配符,本文介绍通配符的使用。这个系列的另外两篇文章:Java 泛型总结(一):基本用法与类型擦除Java 泛型总结(二):泛型与数组数组的协变在了解通转载 2017-07-21 17:14:33 · 380 阅读 · 0 评论 -
回调机制和模版方法
转自:http://www.cnblogs.com/lbangel/p/3342571.html1. 什么是回调函数 所谓回调,就是客户程序C调用服务程序S中的某个函数A,然后S又在某个时候反过来调用C中的某个函数B,对于C来说,这个B便叫做回调函数。回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时转载 2017-05-30 15:27:24 · 1647 阅读 · 0 评论 -
Java IO最详解
转自:http://blog.csdn.net/yczz/article/details/38761237初学Java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计转载 2017-07-23 22:17:34 · 220 阅读 · 0 评论 -
Java自动装箱与拆箱及其陷阱
在本文中,笔者向大家介绍下Java中一个非常重要也非常有趣的特性,就是自动装箱与拆箱,并从源码中解读自动装箱与拆箱的原理,同时这种特性也留有一个陷阱。开发者如果不注意,就会很容易跌入这个陷阱。自动装箱(Autoboxing)定义 大家在平时编写Java程序时,都常常以以下方式来定义一个Integer对象:[java] view plai转载 2017-06-21 09:53:10 · 139 阅读 · 0 评论 -
你真的了解try{ return }finally{}中的return?
转自:http://www.cnblogs.com/averey/p/4379646.html今天去逛论坛 时发现了一个很有趣的问题:谁能给我我解释一下这段程序的结果为什么是:2.而不是:3代码如下:class Test { public int aaa() { int x = 1; try {转载 2017-05-22 15:41:19 · 202 阅读 · 0 评论 -
多线程的实现方式及其区别
转自:http://www.cnblogs.com/Mindreader/p/5472409.html多线程的实现方式及其区别实现多线程有两种方式:(自JDK1.5之后有三种,最后一种并不常用) 1.继承Thread类 2.实现Runnable接口(Callable接口) 一个类如果实现了Runnable接口或者继承了Thre转载 2017-05-22 08:36:07 · 690 阅读 · 0 评论 -
Java并发编程:Callable、Future和FutureTask
Java并发编程:Callable、Future和FutureTask 在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。 而自从Jav转载 2017-05-21 22:47:53 · 223 阅读 · 0 评论 -
ThreadLocal(线程局部变量)
转自:http://blog.csdn.net/yanwushu/article/details/7578097ThreadLocal(线程局部变量)概述ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。转载 2017-05-21 17:17:57 · 753 阅读 · 0 评论 -
内部类详解(很详细)
(转)内部类有两种情况:(1) 在类中定义一个类(私有内部类,静态内部类)(2) 在方法中定义一个类(局部内部类,匿名内部类) 1、私有内部类 —— 在方法之间定义的内部类,非静态 我们首先看看类中内部类的两个特点: (1) 在外部类的作用范围内可以任意创建内部类对象,即使内部类是私有的(私有内部类)。即内部类对包围它的外部类可见。转载 2017-04-17 10:56:58 · 770 阅读 · 0 评论 -
Java中阻塞队列的使用
转自:http://www.cnblogs.com/exmyth/p/6440268.html 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景转载 2017-05-21 21:36:15 · 2069 阅读 · 0 评论 -
静态工厂方法
创建类的实例的最常见的方式是用new语句调用类的构造方法。在这种情况下,程序可以创建类的任意多个实例,每执行一条new语句,都会导致Java虚拟机的堆区中产生一个新的对象。假如类需要进一步封装创建自身实例的细节,并且控制自身实例的数目,那么可以提供静态工厂方法。例如Class实例是Java虚拟机在加载一个类时自动创建的,程序无法用new语句创建java.lang.Class类的实例,因为C转载 2017-05-05 11:09:59 · 360 阅读 · 0 评论 -
java的动态代理机制详解
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所以本篇随笔就是对java的动态机制进行一个回顾。在java的动态代理机制中,有两个重要的类或转载 2017-04-23 10:00:55 · 160 阅读 · 0 评论 -
Map.get()方法要注意其返回值为null
在编写判断求第一个节点算法时发现://已知单链表中存在环,求进入环的第一个节点 public Node getFirstNodeInCycleHashMap(Node head){ HashMap map=new HashMap(); while (head!=null){ if(map.get(head)==true原创 2017-07-03 13:54:56 · 28549 阅读 · 0 评论 -
Java的三种代理模式
转自:http://www.cnblogs.com/cenyu/p/6289209.htmlJava的三种代理模式1.代理模式代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或转载 2017-07-15 20:23:13 · 240 阅读 · 0 评论 -
Java 泛型总结(一):基本用法与类型擦除
简介Java 在 1.5 引入了泛型机制,泛型本质是参数化类型,也就是说变量的类型是一个参数,在使用时再指定为具体类型。泛型可以用于类、接口、方法,通过使用泛型可以使代码更简单、安全。然而 Java 中的泛型使用了类型擦除,所以只是伪泛型。这篇文章对泛型的使用以及存在的问题做个总结,主要参考自 《Java 编程思想》。这个系列的另外两篇文章:Java 泛型总结(二):泛转载 2017-07-21 17:34:26 · 261 阅读 · 0 评论 -
java基本数据类型传递与引用传递区别详解
转自:http://blog.csdn.net/javazejian/article/details/51192130Java的值传递和引用传递在面试中一般都会都被涉及到,今天我们就来聊聊这个问题,首先我们必须认识到这个问题一般是相对函数而言的,也就是java中的方法参数,那么我们先来回顾一下在程序设计语言中有关参数传递给方法(或函数)的两个专业术语:按值调用(call b转载 2017-06-21 09:38:35 · 201 阅读 · 1 评论