![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 83
gongpulin
这个作者很懒,什么都没留下…
展开
-
Java反射基本使用方法
https://juejin.im/post/5de3242e6fb9a071886675d7原创 2020-02-23 22:22:10 · 167 阅读 · 0 评论 -
JDK1.8的String笔记
java中String类为什么要设计成final呢? 主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以String被定义成final。1、不允许其他类继承。这个应该不是最终原因,但这里权且也当成是一个原因。 String类的内部好多方法的实现都不是Java编程语言本身编写的,好多方法都是调用的操作原创 2016-07-19 14:10:32 · 5230 阅读 · 0 评论 -
2015年Java开发岗位面试题归类
一、Java基础1. String类为什么是final的。2. HashMap的源码,实现原理,底层结构。3. 说说你知道的几个Java集合类:list、set、queue、map实现类咯。。。4. 描述一下ArrayList和LinkedList各自实现和区别5. Java中的队列都有哪些,有什么区别。6. 反射中,Class.forName和cl转载 2016-06-23 09:16:33 · 1698 阅读 · 0 评论 -
Java笔试面试题整理第一波
Java笔试面试题整理第一波1、Java变量Java中主要有如下几种类型的变量局部变量类变量(静态变量)-- 属于类成员变量(非静态变量)-- 属于对象2、关于枚举 package com.scu.lly;public class EnumTest {/*** 颜色枚举*/enum ColorEnum{RED,GREEN转载 2016-06-23 09:09:27 · 2538 阅读 · 0 评论 -
FastJson--阿里巴巴公司开源的速度最快的Json和对象转换工具
这是关于FastJson的一个使用Demo,在Java环境下验证的 [java] view plaincopy class User{ private int id; private String name; public int getId() { return id;原创 2016-07-29 10:50:47 · 1093 阅读 · 0 评论 -
深入分析 Java I/O 的工作机制
深入分析 Java I/O 的工作机制I/O 问题可以说是当今互联网 Web 应用中所面临的主要问题之一,因为当前在这个海量数据时代,数据在网络中随处流动。这个流动的过程中都涉及到 I/O 问题,可以说大部分 Web 应用系统的瓶颈都是 I/O 瓶颈。本文的目的正是分析 I/O 的内在工作机制,你将了解到:Java 的 I/O 类库的基本架构;磁盘 I/O 工作机制;网络 I/转载 2016-07-24 23:45:54 · 870 阅读 · 0 评论 -
深入理解Java对象序列化
深入理解Java对象序列化关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结。此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制。作者:Sha Jiang来源:Sha Jiang的博客|2012-02-14 10:29 收藏 分享关于Java序列化的文章早已是汗牛充栋了,转载 2016-07-13 18:53:54 · 614 阅读 · 0 评论 -
java中的线程池
综述 在我们的开发中经常会使用到多线程。例如在Android中,由于主线程的诸多限制,像网络请求等一些耗时的操作我们必须在子线程中运行。我们往往会通过new Thread来开启一个子线程,待子线程操作完成以后通过Handler切换到主线程中运行。这么以来我们无法管理我们所创建的子线程,并且无限制的创建子线程,它们相互之间竞争,很有可能由于占用过多资源而导致死机或者OOM。所以在Jav转载 2016-06-29 17:56:07 · 1713 阅读 · 0 评论 -
69道Spring面试题和答案
原文地址 译者:深海(1422207401@qq.com) 校对:方腾飞目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVCSpring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是转载 2016-05-23 10:03:05 · 1547 阅读 · 0 评论 -
Java ConcurrentModificationException异常原因和解决方法
Java ConcurrentModificationException异常原因和解决方法 在前面一篇文章中提到,对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面我们就来讨论以下这个异常出现的原因以及解决办法。 以下是本文目录大纲: 一.Concurr转载 2016-08-17 11:32:16 · 365 阅读 · 0 评论 -
java反射基础
1. 类属性反射: 每一个Java对象都会包含一个描述其属性(metadata)信息的类对象,该对象将作为Java反射中最重要的一个入口点,几乎所有和反射相关的应用都是从这里开始的。 1) 反射类的名字: 1 public static void main(String[] args) { 2 String str = "Hel转载 2016-07-29 18:16:37 · 893 阅读 · 0 评论 -
Thread和Runnable实现多线程的区别
Java中实现多线程有两种方法:继承Thread类、实现Runnable接口,在程序开发中只要是多线程,肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下优势: 1、可以避免由于Java的单继承特性而带来的局限; 2、增强程序的健壮性,代码能够被多个线程共享,代码与数据是独立的; 3、适合多个相同程序代码的线程区处理同一资原创 2016-08-17 12:13:41 · 390 阅读 · 0 评论 -
Java实现堆排序(大根堆)
https://www.cnblogs.com/CherishFX/p/4643940.html转载 2018-12-10 21:18:05 · 1004 阅读 · 0 评论 -
7天学会Maven(第一天——了解 Maven)
转载:http://www.cnblogs.com/haippy/archive/2012/07/04/2576453.html#3924358什么是 Maven?(摘自百度百科)Maven是Apache的一个顶级的项目:http://maven.apache.org/Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turbine项目中它被用来简化项目的构建过程。当时有很多项...转载 2018-07-11 17:12:03 · 202 阅读 · 0 评论 -
mapreduce 实现内连接,左连接,右连接,全连接,反连接
数据集user(id name)用户表1 user12 user23 user34 user45 user56 user6post(userid postid postname)帖子表1 1 post11 2 post22 3 post34 4 post45 5 post58 6 post68 7 post78 8 post8package com.test;imp...原创 2018-03-06 16:50:11 · 415 阅读 · 0 评论 -
hive udf开发超详细手把手教程
http://blog.csdn.net/bitcarmanlee/article/details/51249260Hive中,除了提供丰富的内置函数(见[一起学Hive]之二–Hive函数大全-完整版)之外,还允许用户使用Java开发自定义的UDF函数。开发自定义UDF函数有两种方式,一个是继承org.apache.hadoop.hive.ql.exec.UDF,另一个是继承org.apache...转载 2018-02-28 23:00:50 · 1629 阅读 · 0 评论 -
Java编程思想重点笔记(Java开发必看)
转载:http://blog.csdn.net/lanxuezaipiao/article/details/41822683Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTT转载 2018-01-03 20:18:23 · 226 阅读 · 0 评论 -
浅析I/O模型:同步、异步、阻塞、非阻塞
也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗。在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型。下面本文先从同步和异步的概念 说起,然后接着阐述了阻塞和非阻塞的区别,接着介绍了阻塞IO和非阻塞IO的区别,然后介绍了同步IO和异步IO的区别,接下来介绍了5种IO模型,最后介绍了两种和高性能IO设计相关的设计模式(Reactor和Pr转载 2016-08-10 13:43:17 · 337 阅读 · 0 评论 -
Java常考面试题
什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。JDK和JRE的区别是什转载 2016-08-29 23:18:54 · 518 阅读 · 0 评论 -
Java 8的八个新特性
Java 8的八个新特性作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs1、接口的默认方法和静态方法Java 8在接口方面引入了新特性。Java 8版之前,接口只有抽象方法,而在Java 8,为接口新增了两种类型的方法。第一种是默认方法。此方法使用了default关键字修饰方法名。实际上接口不原创 2016-08-03 11:08:45 · 345 阅读 · 0 评论 -
Java的接口和抽象类详解
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方一.抽象类在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:abstract void fun();抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象转载 2016-05-23 09:51:06 · 1501 阅读 · 1 评论 -
Java经典类库-Guava中的函数式编程讲解
原文出处: 黄博文如果我要新建一个java的项目,那么有两个类库是必备的,一个是junit,另一个是Guava。选择junit,因为我喜欢TDD,喜欢自动化测试。而是用Guava,是因为我喜欢简洁的API。Guava提供了很多的实用工具函数来弥补java标准库的不足,另外Guava还引入了函数式编程的概念,在一定程度上缓解了java在JDK1.8之前没有lambda的缺陷,使使用jav转载 2016-05-23 09:45:12 · 1538 阅读 · 0 评论 -
垃圾回收算法
转载子:http://blog.csdn.net/u011116672/article/details/50994092前言垃圾收集算法是JVM中垃圾收集器的方法论,所以了解算法是必要的,在算法领域只做最简单的介绍,力求文章的简单易懂。垃圾收集算法主要有以下几种:标记-清除算法(mark-sweep)、复制算法(copying)和标记-整理算法(mark-compact)。随着转载 2016-04-04 21:59:39 · 1733 阅读 · 0 评论 -
详解垃圾收集器
转载:http://blog.csdn.net/u011116672/article/details/50994096前言前面已经对垃圾收集算法有了较为详细的介绍,这里我们将对JVM中具体的垃圾回收器进行介绍,在虚拟机规范中并没有对垃圾回收器如何实现具体介绍,因此每个厂商的垃圾回收器可能会完全不同,但是我们介绍的是基于JDK1.7之后的Hotspot虚拟机(包括前面对Java虚转载 2016-04-04 22:06:20 · 1811 阅读 · 0 评论 -
java传值与传引用的三种情况
基本数据类型传递的是值的拷贝;对象类型传递的是引用的拷贝;而String类型传递的虽然也是对象,但它不同于一般的对象类型,它String被设计为不可修改的类型,也就是对String对象的任何修改都将重新创建一个对象而放弃以前的内存空间的引用!public class Example{ String str=new String("good"); char[]ch={'a','b'原创 2016-03-03 22:59:30 · 584 阅读 · 0 评论 -
Hibernate配置文件详解
转自:http://secyaher.blog.163.com/blog/static/38955772007102814446425/ Hibernate的基本配置文件有两种:hibernate.cfg.xml和.hbm.xml文件。前者包含了Hibernate与数据库的基本连接信息,在Hibernate工作的初始阶段,这些信息被先后加载到Configuration和SessionFac转载 2016-01-14 16:14:01 · 1274 阅读 · 0 评论 -
JVM参数配置
一个性能较好的web服务器jvm参数配置: -server //服务器模式 -Xmx2g //JVM最大允许分配的堆内存,按需分配 -Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存。 -Xmn256m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代 -XX:PermSize=128m //持久代内存大小 -Xss256原创 2016-01-02 14:30:03 · 384 阅读 · 0 评论 -
中文分词算法基础
中文分词算法现在一般分为三类:基于词典的字符串匹配,基于理解,基于统计的分词。 基于词典的字符串匹配分词:机械分词算法。将待分的字符串与一个充分大的机器词典中的词条进行匹配。分为正向匹配和逆向匹配;最大长度匹配和最小长度匹配;单纯分词和分词与标注过程相结合的一体化方法。所以常用的有:正向最大匹配,逆向最大匹配,最少切分法。。。实际应用中,将机械分词作为初分手段,利用语言信息提高切分准确率。优先识别原创 2016-01-02 11:32:41 · 1383 阅读 · 0 评论 -
jvm内存管理和垃圾回收
在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C/C++直接操作内存的危险。但是,也正因为内存管理完全由JVM负责,所以也使Java很多程序员不再关心内存分配,导致很多程序低效,耗内存。因此就有了Java程序员到最后应该去了解JVM,才能写出更高效,充分利用有限的内存的程序。 1.Ja原创 2016-01-02 00:08:42 · 475 阅读 · 0 评论 -
jvm运行原理
JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理。冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操作码和地址码组成,操作码决定了操作类型和所操作的数的数字类型,地址码则指出地址码和操作数。从dos到window8,从unix到ubuntu和CentOS,还有MAC OS等等,不同的操作系统指令集以及原创 2016-01-01 23:29:47 · 501 阅读 · 0 评论 -
java字符串
java字符串三个重要特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 三者之间的关系:String、StringBuffer、StringBuilder 都实现了 CharSequence 接口,内部都是用一个char数组实现,虽然它们都与字符串相关,但是其处理机制不同。原创 2016-01-01 23:04:06 · 561 阅读 · 0 评论 -
Java NIO 系列教程
(一) Java NIO 概述Channel 和 BufferSelector(二) ChannelChannel的实现基本的 Channel 示例(三) BufferBuffer的基本用法Buffer的capacity,position和limitcapacitypositionlimitBuffer的类型Buffer的分配向Buffer中转载 2016-04-09 18:20:56 · 365 阅读 · 0 评论 -
JDK内置工具
javap你可以给 javap(Java class文件反编译器)传递这些有用的参数:-I – 打印行数和局部变量-p – 打印包括非public在内的所有类和成员信息,-c – 打印方法字节码比如在著名的“你真的懂 Classloader 吗?”演讲里,当出现 NoSuchMethodException 错误时,我们可以执行以下命令来调转载 2016-04-09 18:25:43 · 1362 阅读 · 0 评论 -
java成神之路
一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收 http://www.jcp.org/en/jsr/detail?id=133 http://ifeve.com/jmm-faq/ 1.1.2. 了解JVM各种参数及调优1.1.3. 学习使用Java工具 jps, jstack, jmap, jconsole转载 2016-04-24 20:01:21 · 1015 阅读 · 0 评论 -
数据结构和算法05 之红-黑树(看完包懂~)
转载:http://blog.csdn.net/eson_15/article/details/51144079(友情提示,红-黑树是基于二叉搜索树的,如果对二叉搜索树不了解,可以先看看:二叉搜索树 ) 从第4节的分析中可以看出,二叉搜索树是个很好的数据结构,可以快速地找到一个给定关键字的数据项,并且可以快速地插入和删除数据项。但是二叉搜索树有个很转载 2016-05-19 09:25:33 · 2243 阅读 · 1 评论 -
单例模式的七种写法
第一种(懒汉,线程不安全):Java代码 public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instance == null)转载 2016-05-13 09:42:20 · 3106 阅读 · 0 评论 -
java集合框架
Java集合框架是java提供的工具包,在java.util.*中,这个包中包含了常用的数据结构:集合、数组、链表、栈、队列、映射等。java集合框架主要可以分为四个部分:List列表、Set集合、Map映射和工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections)。 java集合框架示意图如下: 从图中可以看原创 2016-05-19 09:11:17 · 1672 阅读 · 0 评论 -
Java的接口和抽象类详解
转载:http://ms.csdn.net/geek/74868对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方一.抽象类在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:abstract void fun(转载 2016-05-19 08:53:56 · 1636 阅读 · 0 评论 -
java内部类之私有内部类、局部内部类、匿名内部类
一、私有内部类:class Out { private int age = 12; private class In { public void print() { System.out.println(age); } } public void outPrint() { new原创 2016-05-07 13:09:37 · 10801 阅读 · 1 评论 -
java内部类之成员内部类、静态内部类
内部类其实就是一个类中还包含着另外一个类如同一个人是由大脑、肢体、器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏:它也有自己的属性和行为(血液、跳动)显然,此处不能单方面用属性或者方法表示一个心脏,而需要一个类,而心脏又在人体当中,正如同是内部类在外部内当中广泛意义上的内部类一般来说包括这四种:成员内部类、局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部原创 2016-05-07 11:53:59 · 4262 阅读 · 0 评论