JAVA
文章平均质量分 59
大鹏_James
这个作者很懒,什么都没留下…
展开
-
23种设计模式全解析
一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两...原创 2020-03-25 01:19:45 · 874 阅读 · 0 评论 -
69道Spring面试题和答案
目录Spring 概述 依赖注入 Spring beans Spring注解 Spring数据访问 Spring面向切面编程(AOP) Spring MVCSpring概述1.什么是spring?Spring是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring框架目标是简化Java...原创 2020-03-25 01:02:53 · 465 阅读 · 0 评论 -
Java 5,6,7,8,9,10,11新特性超详细总结
java51.泛型 (Generics) List<Integer> list=new ArrayList<Integer>();2.增强循环(Enhanced for Loop)3.自动封箱拆箱(Autoboxing/Unboxing )。八大基本类型和它们的包装类能够自动的相互转换。4.枚举(Typesafe Enums)。ps:枚举...原创 2020-03-18 09:40:15 · 278 阅读 · 0 评论 -
深入理解Java的栈与堆栈
摘要: 我想这篇足以让大家很清晰理解Java的栈和堆栈的区别。下面的是我收集了好多网友的资料加以整理的。 Java 中的堆和栈 Java把内存划分成两种:一种是栈内存,一种是堆内存。 我想这篇足以让大家很清晰理解Java的栈和堆栈的区别。下面的是我收集了好多网友的资料加以整理的。Java 中的堆和栈 Java把内存划分成两种:一种是栈内存,一种是堆内存。 1.栈(stac原创 2017-05-07 14:15:11 · 454 阅读 · 0 评论 -
java集合框架图和IO流知识图
java集合框架图java IO流原创 2017-04-24 21:27:37 · 1639 阅读 · 0 评论 -
Java编程专题思维导图
原创 2017-05-05 17:28:14 · 552 阅读 · 0 评论 -
java中String、StringBuffer、StringBuilder
String、StringBuffer、StringBuilder区别 答:Java平台提供了两种类型的字符串:String和StringBuffer/StringBuilder,它们可以储存和操作字符串。 而StringBuffer/StringBuilder类表示的字符串对象可以直接进行修改。 StringBuilder是Java 5中引入的,它和StringBuffer的方法完全原创 2017-05-05 11:35:08 · 372 阅读 · 0 评论 -
阿里巴巴 JAVA 开发手册
阿里巴巴 JAVA 开发手册1.0.0阿里巴巴集团技术部2016.12.7首次向 Java 业界公开一、 编程规约(一) 命名规约1. 【强制】所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例: _name / __name / $Object / name_ / name$ / Object$转载 2017-04-23 01:03:15 · 441 阅读 · 0 评论 -
java中10大常见异常
NO.1 Java.alng.NullPointerException 这个异常大家肯定都经常遇到,异常的解释是 “程序遇上了空指针 “,简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中出现空指针,很多情况下是一些刚开始学习编程的朋友常犯的错误,即把数组的初始化和数组元素的翻译 2017-05-07 15:19:24 · 15415 阅读 · 5 评论 -
深入分析Java使用+和StringBuilder进行字符串拼接的差异
http://bsr1983.iteye.com/blog/1935856讨论java中String在进行拼接时使用+和StringBuilder和StringBuffer中的执行速度差异很大,而且之前看的书上说java在编译的时候会自动将+替换为StringBuilder或StringBuffer,但对于这些我都没有做深入的研究,今天准备花一点时间,仔细研究一下。 首先看转载 2017-05-07 16:53:45 · 584 阅读 · 0 评论 -
排序算法之直接插入排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经有序的,现在要把第n个数插到前面的有序数中,使得这n个数也是有序的。如此反复循环,直到全部排好顺序。这个思想类似打扑克的时候抓牌的情形。回到目录2、代码示例package sort;public class I原创 2017-04-28 10:13:08 · 303 阅读 · 0 评论 -
java内存详述
https://www.zhihu.com/question/19748817原创 2017-05-07 21:57:31 · 259 阅读 · 0 评论 -
排序算法之堆排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 堆排序是一种树形选择排序,是对直接选择排序的有效改进。堆的定义如下:具有n个元素的序列(h1,h2,…,hn),当且仅当满足(hi>=h2i,hi>=2i+1)或(hi回到目录2、代码示例package sort;import org.junit.Test;/**原创 2017-04-28 10:08:29 · 324 阅读 · 0 评论 -
排序算法之基数排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 将所有待比较数值(正整数)统一为同样 的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后,数列就变成一个有序序列。回到目录2、代码示例package sort;import java.util.ArrayLis原创 2017-04-28 10:07:27 · 471 阅读 · 0 评论 -
排序算法之归并排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。回到目录2、代码示例package sort;/** * 归并排序 */public class M原创 2017-04-28 10:06:07 · 319 阅读 · 0 评论 -
排序算法之快速排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分,一部分比基准元素小,一部分大于等于基准元素,此时基准元素在其排好序后的正确位置,然后再用同样的方法递归地排序划分的两部分。回到目录2、代码示例package sort;/**原创 2017-04-28 10:04:15 · 227 阅读 · 0 评论 -
java编程中的性能提升问题
java编程中的性能提升 软件产品犹如一栋大楼,大楼在建设初期,会有楼房规划,建筑构想,打牢地基,后面才是施工人员进行进行实质性的建设。要保证软件产品的高质量,优秀的架构,优秀的产品设计,是产生高质量的前提。同时,没有过硬的编码实现,一样得不到预期的效果。纵观现在的产品,产品架构没多大差别,基本运用基线版本进行局点定制。而系统中的一些功能性能常常不过关,问题往往就出在编码实现上。这块是开发人原创 2016-04-21 01:08:40 · 1698 阅读 · 2 评论 -
java中Map,List与Set的区别
Set,List,Map的区别java集合的主要分为三种类型:Set(集)List(列表)Map(映射)要深入理解集合首先要了解下我们熟悉的数组:数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据。 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不能存原创 2016-11-03 14:15:06 · 242 阅读 · 0 评论 -
【java基础总结系列】:java 多线程3种实现方式
【java基础总结系列】:java 多线程3种实现方式1.JAVA多线程实现方式JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。2.继承Thread类实现多线程继承Thread类的方法原创 2016-05-23 00:17:53 · 351 阅读 · 0 评论 -
【Java SE系列总结篇】:Java多线程(一)
【Java SE系列总结篇】:Java多线程(一)本文转自http://www.cnblogs.com/lwbqqyumidi/p/3804883.html多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:上图中基本上囊括了Java中多线程各转载 2016-05-23 00:04:48 · 408 阅读 · 0 评论 -
【java SE基础】Java多线程详解
Java线程详解本文转载自http://www.cnblogs.com/riskyer/p/3263032.htmlJAVA多线程系列(J.U.C)-整体技术栈的主要大板块包含内容,如下图所示:Java线程:概念与原理一、操作系统中线程和进程的概念现在的操作系统是多任...转载 2016-05-22 23:47:00 · 1462 阅读 · 1 评论 -
排序算法之冒泡排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。回到目录2、代码示例package sort;/** * 冒泡排序 *原创 2017-04-28 10:09:14 · 282 阅读 · 0 评论 -
排序算法之简单选择排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 在要排序的一组数中,选出最小的一个数与第一个位置的数交换;然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。回到目录2、代码示例package sort;import org.junit.Test;/** * 简单选择排序原创 2017-04-28 10:10:33 · 231 阅读 · 0 评论 -
排序算法之希尔排序
阅读目录1、基本思想2、代码示例3、效率分析回到目录1、基本思想 在要排序的一组数中,按某个增量d(n/2,n为要排序数的个数)分成若干组,每组中记录的下标相差d.对每组中全部元素进行直接插入排序,然后再用一个较小的增量(d/2)对它进行分组,在每组中再进行直接插入排序。当增量减到1时,进行直接插入排序后,排序完成。回到目录2、代码示例pa原创 2017-04-28 10:12:01 · 329 阅读 · 0 评论 -
Integer类型与int的==比较
前言Java中有两种类型基本类型基本数据类类型存的是数值本身引用类型引用类型变量在内存放的是数据的引用基本类型通过==比较的是他们的值大小,而引用类型比较的是他们的引用地址正文在一些特殊的类中,如Integer在使用==比较的时候往往非常容易出错,下面通过几个例子来探索一下具体的原理代码片段public c原创 2017-05-04 00:31:17 · 394 阅读 · 0 评论 -
Java堆、栈和常量池以及相关String的详细讲解(经典中的经典)
Java堆、栈和常量池以及相关String的详细讲解一:在JAVA中,有六个不同的地方可以存储数据: 1. 寄存器(register)。 这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。 ------最快的存储区, 由编译器根原创 2017-05-03 22:24:10 · 227 阅读 · 0 评论 -
java 多线程基础之二:线程的中断(interrupt)
转载自http://www.yihaomen.com/article/java/353.htm这篇博客记录怎么中断一个线程(interrupting a thread)有时候,我们需要结束一个线程,因为你想终止程序,或者你想取消某个任务,而这个任务是在线程中执行的。java 提供了 interruption 机制,在我们需要强制结束一个线程的时候使用.但在使用的时候,有一点是需要注转载 2017-05-02 00:02:37 · 388 阅读 · 0 评论 -
java 多线程基础之一:多线程创建,执行,状态管理
转载自http://www.yihaomen.com/article/java/352.htm这几天在看一本书: 因为是纯英文版,平时也很少有时间专门去看,现在顺便复习下多线程编程所以,就记录下来。创建和运行一个线程 有两种方法创建一个线程:1. 继承 Thread 类 重载 Override run() 方法2. 创建一个类实现 Runnable 接口,然后创建一个Threa原创 2017-05-02 00:01:22 · 359 阅读 · 0 评论 -
为什么不能从静态的方法里调用非静态的方法或变量
非静态的方法可以调用静态的方法,但是静态的方法不可以调用非静态的方法。类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。在一个类的静态成员中去访问其非静态成员之所以会出错是因为在类的非静态成员不存在的时候类的静态成员转载 2017-05-01 23:45:43 · 533 阅读 · 0 评论 -
资深java软件工程师给大家的忠告
java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍。这一部分的内容,同样适用于一些希望转行到Java的同学。 在大家看之前,我要先声明两点。1、由于我本人是Java后端开发出身,因此所推荐的学习内容是Jav转载 2017-05-01 17:25:23 · 31438 阅读 · 18 评论 -
Java系列-Set、List、Map的遍历总结
不知道为什么,昨天写的这篇文章不见了。早上重新补上来吧,以后写东西还是得先写在电脑里面,然后在发布出来才行。集合类一直让我感觉头痛,因为我老是搞混淆,可能是基础不够扎实的原因吧。现在专们花个时间来总结下,以后混淆了就直接来查看便是。那么,就先来看看各种集合类的比较表吧。先写下我自己的记忆方式:Collection:把它当做是一个集合,没有任何限制条件的集合,那么它里面的元素原创 2017-04-28 16:02:07 · 364 阅读 · 0 评论