- 博客(27)
- 资源 (3)
- 问答 (2)
- 收藏
- 关注
转载 Java 反射教程
什么是反射?反射有什么用处?1. 什么是反射?“反射(Reflection)能够让运行于JVM中的程序检测和修改运行时的行为。”这个概念常常会和内省(Introspection)混淆,以下是这两个术语在Wikipedia中的解释:内省用于在运行时检测某个对象的类型和其包含的属性;反射用于在运行时检测和修改某个对象的结构及其行为。从它们的定义可以看出,内省是反射的一个子集。有些语
2017-11-24 17:43:43 207
转载 10 个有关 String 的面试问题
下面是面试中最容易问到的有关String的问题。1. 如何比较两个字符串?使用“==”还是equals()方法?简单来讲,“==”测试的是两个对象的引用是否相同,而equals()比较的是两个字符串的值是否相等。除非你想检查的是两个字符串是否是同一个对象,否则你应该使用equals()来比较字符串。如果你知道interning的概念的话,那就更好了。2. 为什么针对安全保密高的信息
2017-11-24 17:39:45 171
原创 设计模式实践系列 (3) - 装饰模式 ( Decorator )
装饰模式 ( Decorator )用途用于动态地给一个对象添加一些额外的职责。 就增加功能来说, Decorator模式相比生成子类更为灵活。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。纯粹的装饰模式很难找到,大多数的装饰模式的实现都是“半透明”的,而不是完全透明的。换言之,允许装饰模式改变接口,增加新的方法。半透明的装饰模式是介于装饰模式和适配器模式之间的。适配器模式的
2017-11-21 13:37:42 179
转载 深入理解 Java中 的 final 关键字
Java中的final关键字非常重要,它可以应用于类、方法以及变量。这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例。final经常和static一起使用来声明常量,你也会看到final是如何改善应用性能的。final关键字的含义?final在Java中是一个保留的关键字,可
2017-11-21 12:21:01 188
原创 设计模式实践系列 (2) - 组合模式 ( Composite )
用途将对象组合成树形结构以表示 “部分——整体” 的层次结构。 Composite使得用户对单个对象和组合对象的使用具有一致性
2017-11-19 20:56:16 228
转载 看透 Spring MVC 源代码分析与实践 —— Spring MVC 组件分析
由于星期一接到面试通知,和面试官约好了星期四面试,所以这几天没更新完这系列的文章,面完试后立马就把这个解决掉。通过这次面试,也让我懂得了很多,知道了自己的一些不足之处,后面还要继续下功夫好好的深入复习下去。这几篇文章写的我觉得还是不够仔细,感兴趣的还是建议自己去看看源码。第 11 章 —— 组件概览HandlerMapping根据 request 找到对应的处理器 Ha
2017-11-19 12:05:07 290
转载 用实例带你提前了解 Java 9 中的新特性
Java 作为 Android 的基础编程语言,每一次迭代也是备受安卓开发人员的关注。这不,Oracle 公司在今年即将发布 Java 9 正式版,一些新的特性和改进很是值得期待。周末时间,拜读了国外的一个 Java 大牛写的有关 Java SE 9 的新功能介绍,简明扼要,示例得当。于是,一时兴起,以拙劣的英语水平磕磕绊绊翻译至此,供大家了解一番。作者:「Rambabu Posa
2017-11-19 11:59:58 434
转载 程序员你为什么这么累?
大家一提到程序员,首先想到的是以下标签:苦逼,加班,熬夜通宵。但是,但凡工作了的同学都知道,其实大部分程序员做的事情都很简单,代码CRUD可以说毫无技术含量,就算什么不懂依葫芦画瓢很多功能也能勉强做出来,做个多线程并发就算高科技了,程序员这行的门槛其实还是比较低的。(这里说的是大部分,有些牛逼的,写算法、jvm等的请自动跳过)是不是觉得很矛盾,一方面工作不复杂,一方面却累成狗。有没有想过问
2017-11-19 11:54:31 225
转载 Java I/O 操作总结
Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。数据流是一串连续不断的数据的集合,就象水管里的水流,在水管的一端一点一点地供水,而在水管的另一端看到的是一股连续不断的水流。数据写入程序可以是一段、一段地向数据流管道中写入数据,这些数据段会按先后顺序形成一个长的数据流。对数据读取程序
2017-11-19 11:51:06 176
转载 Java 异常处理的误区和经验总结
本文着重介绍了 Java 异常选择和使用中的一些误区,希望各位读者能够熟练掌握异常处理的一些注意点和原则,注意总结和归纳。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。误区一、异常的选择图 1. 异常分类图 1 描述了异常的结构,其实我们都知道异常分检测异常和非检测异常,但是在实际中又混淆了这两种异常的应用。由于非检测异常
2017-11-19 11:48:10 178
转载 Spring 基础知识汇总
Spring简介Spring框架由Rod Johnson开发,2004年发布了Spring框架的第一版。Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通用步骤,留给开发者的仅仅是与特定应用相关的部分,从而大大提高了企业应用的开发效率。Spring总结起来优点如下低侵入式设计,代码的污染极低独立于各种应用服务器,基于Spring框架的应用,可以
2017-11-19 11:37:56 136
转载 Java 集合框架面试问题集锦
Java集合框架(例如基本的数据结构)里包含了最常见的Java常见面试问题。很好地理解集合框架,可以帮助你理解和利用Java的一些高级特性。下面是面试Java核心技术的一些很实用的问题。Q:最常见的数据结构有哪些,在哪些场景下应用它们?A. 大部分人都会遗漏树和图这两种数据结构。树和图都是很有用的数据结构。如果你在回答中提及到它们的话,面试者可能会对你进行进一步进行的考核。
2017-11-19 11:33:52 383
转载 一张图读懂 Java 多线程
1、带着疑问看图1)竞争对象的锁和竞争CPU资源以及竞争被唤醒2)何种情况下获取到了锁,何种情况下会释放锁2、还是那张图3、详细图解1)Thread t = new Thread(),初始化一个线程,实际上就是一个普通对象,此时他的状态为New2)t.start(); 线程处于就绪状态(可运行状态),也就是随时等待着运行, 不要小看这个start,这个start决定了他是否是一个真正的线程实例,因为
2017-11-19 11:25:16 359
转载 Java 程序员应该知道的10个面向对象理论
面向对象理论是面向对象编程的核心,但是我发现大部分Java程序员热衷于像单例模式、装饰者模式或观察者模式这样的设计模式,而并没有十分注意学习面向对象的分析和设计...
2017-11-19 11:18:59 221
转载 Java 实现数据结构——树
文章目录`一 树的概念与应用场景1.1 二叉查找树1.2 AVL树1.3 红黑树1.4 B树二 树的操作与源码实现2.1 TreeMap/TreeSet实现原理更多文章:https://github.com/guoxiaoxing/data-structure-and-algorithm/blob/master/README.md
2017-11-18 14:03:16 229
转载 Java 的深拷贝和浅拷贝
基本知识Java在运行时的内存使用分两块:栈内存与堆内存。只就变量而言,栈内存上分配一些基本类型的变量(如int、boolean)与对象的引用,而堆内存分配给真正的对象本身以及数组等,堆内存上的数据由栈内存上的相应变量引用,相当于栈中存储着堆内存中实际对象或数组的标记或别名(实际上是堆内存变量首地址)。什么是拷贝将对象复制出一份的行为称为对象的拷贝。一般来说
2017-11-18 14:00:47 199
转载 Java 中的闭包之争
闭包一直都是Java社区中争论不断的话题,很多语言例如JavaScript,Ruby,Python等都支持闭包这个语言特性,闭包功能强大且灵活,Java并没有显式地支持它,但其实Java中也存在着所谓的”闭包”.本文作者为: SylvanasSun.转载请务必将下面这段话置于文章开头处(保留超链接).本文转发自SylvanasSun Blog,原文链接: https:/
2017-11-18 13:58:50 246
转载 Java 构造器注意事项
构造器决不能调用可被覆盖的方法,并简单理解声明类型和实际类型。超类的构造器在子类的构造器运行之前运行,也就是说,在创建对象时,先运行超类中的构造器,然后再运行子类中的构造器,此时,如果在执行超类构造器的时候,构造器执行了可覆盖的方法,那么就会去调用子类中的该方法,而此时子类还未被实例化,此时就有可能出问题。以一个例子说明:public class Super {
2017-11-18 13:53:09 247
转载 理解 Java 序列化
序列化作用注意事项Java 序列化的缺点举例说明项目中曾遇到的一个小问题参考序列化定义:将一个对象编码成一个字节流,称作将该对象序列化,反之,将字节流重新构建成对象,则称作反序列化。序列化作用序列化将对象编码成字节流,主要用于对象的持久化,远程通信,跨进程访问等地方。比如开发中常用到的 ORM 框架 Mybatis,或者 JP
2017-11-18 13:46:18 205
转载 35 个 Java 代码性能优化总结
代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可以...
2017-11-18 13:10:37 131
转载 一位资深程序员大牛给予Java初学者的学习路线建议
今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍。这一部分的内容,同样适用于一些希望转行到Java的同学
2017-11-18 13:00:30 108
转载 2017年Java面试题整理
面试是我们每个人都要经历的事情,大部分人且不止一次,这里给大家总结最新的2016年面试题,让大家在找工作时候能够事半功倍
2017-11-18 12:39:25 753 1
转载 JVM类加载机制详解
引言 如下图所示,JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化,下面我们就分别来看一下这五个过程。加载 加载是类加载过程中的一个阶段,这个阶段会在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的入口。
2017-11-18 12:31:24 126
转载 IDEA下利用Live Template编写注释模版
注释模版注释模版是指在编写代码时针对不同的类,方法或者其他文件时自动生成的注释信息。在eclipse我们很熟悉可以利用 /**,Enter在方法,类名等前一行来生成注释模板,但是IntelliJ IDEA并没有去按照原来的方法去实现。他引进了Live Template来达到类似效果。
2017-11-18 11:37:07 5018
转载 一位10年 Java 工作经验的架构师聊 Java 和工作经验
从事近十年的 JavaEE 应用开发工作,现任阿里巴巴公司系统架构师。对分布式服务架构与大数据技术有深入研究,具有丰富的 B/S 架构开发经验与项目实战经验,擅长敏捷开发模式。国内开源软件推动者之一,Smart Framework 开源框架创始人。热爱技术交流,乐于分享自己的工作经验。著有《架构探险——从零开始写Java Web框架》一书。我的十年技术之路和大家介绍下我目前所从事的工作。我目前从事分
2017-11-17 22:14:41 829
原创 设计模式实践系列(1) - 单例模式(Singleton)
用途 保证一个类仅有一个实例, 并提供一个访问它的全局访问点。让类自身负责保存它的唯一实例。 这个类可以保证没有其他实例可以被创建(通过截取创建新对象的请求 ), 并且它可以提供一个访问该实例的方法实例 在一部电影中,导演的作用是至关重要的,通常一部电影只有一个总导演。在电影的拍摄过程中,可能会设计多个片场,导演需要对不同的演员进行分别指导,但所有演员导演都是同一个人,“把导演叫过来” 这
2017-11-16 21:12:35 258
原创 面向对象软件设计模式(1)--单例模式(Singleton)
用途 保证一个类仅有一个实例, 并提供一个访问它的全局访问点。让类自身负责保存它的唯一实例。 这个类可以保证没有其他实例可以被创建(通过截取创建新对象的请求 ), 并且它可以提供一个访问该实例的方法实例 在一部电影中,导演的作用是至关重要的,通常一部电影只有一个总导演。在电影的拍摄过程中,可能会设计多个片场,导演需要对不同的演员进行分别指导,但所有演员导演都是同一个人,“把导演叫过来” ...
2017-11-16 21:08:10 282
【MyEclipse】请问如何才能把下图中的这么多Tomcat图标删掉
2017-04-26
【Android图标问题】如图
2017-02-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人