Java 反射教程

什么是反射?反射有什么用处? 1. 什么是反射? “反射(Reflection)能够让运行于JVM中的程序检测和修改运行时的行为。”这个概念常常会和内省(Introspection)混淆,以下是这两个术语在Wikipedia中的解释: 内省用于在运行时检测某个对象的类型和其包含的属性;反...

2017-11-24 17:43:43

阅读数:71

评论数:0

10 个有关 String 的面试问题

下面是面试中最容易问到的有关String的问题。 1. 如何比较两个字符串?使用“==”还是equals()方法? 简单来讲,“==”测试的是两个对象的引用是否相同,而equals()比较的是两个字符串的值是否相等。除非你想检查的是两个字符串是否是同一个对象,否则你应该使用equals()来比较字...

2017-11-24 17:39:45

阅读数:64

评论数:0

设计模式实践系列 (3) - 装饰模式 ( Decorator )

装饰模式 ( Decorator )用途用于动态地给一个对象添加一些额外的职责。 就增加功能来说, Decorator模式相比生成子类更为灵活。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。纯粹的装饰模式很难找到,大多数的装饰模式的实现都是“半透明”的,而不是完全透明的。换...

2017-11-21 13:37:42

阅读数:59

评论数:0

深入理解 Java中 的 final 关键字

Java中的final关键字非常重要,它可以应用于类、方法以及变量。这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例。final经常和static一起使用来声明常量,你也会看到final是如...

2017-11-21 12:21:01

阅读数:54

评论数:0

设计模式实践系列 (2) - 组合模式 ( Composite )

用途将对象组合成树形结构以表示 “部分——整体” 的层次结构。 Composite使得用户对单个对象和组合对象的使用具有一致性

2017-11-19 20:56:16

阅读数:63

评论数:0

看透 Spring MVC 源代码分析与实践 —— Spring MVC 组件分析

由于星期一接到面试通知,和面试官约好了星期四面试,所以这几天没更新完这系列的文章,面完试后立马就把这个解决掉。通过这次面试,也让我懂得了很多,知道了自己的一些不足之处,后面还要继续下功夫好好的深入复习下去。这几篇文章写的我觉得还是不够仔细,感兴趣的还是建议自己去看看源码。 第 11 章 ...

2017-11-19 12:05:07

阅读数:70

评论数:0

用实例带你提前了解 Java 9 中的新特性

Java 作为 Android 的基础编程语言,每一次迭代也是备受安卓开发人员的关注。这不,Oracle 公司在今年即将发布 Java 9 正式版,一些新的特性和改进很是值得期待。 周末时间,拜读了国外的一个 Java 大牛写的有关 Java SE 9 的新功能介绍,简明扼要,示例得当。于是...

2017-11-19 11:59:58

阅读数:182

评论数:0

程序员你为什么这么累?

大家一提到程序员,首先想到的是以下标签:苦逼,加班,熬夜通宵。但是,但凡工作了的同学都知道,其实大部分程序员做的事情都很简单,代码CRUD可以说毫无技术含量,就算什么不懂依葫芦画瓢很多功能也能勉强做出来,做个多线程并发就算高科技了,程序员这行的门槛其实还是比较低的。(这里说的是大部分,有些牛逼的,...

2017-11-19 11:54:31

阅读数:53

评论数:0

Java I/O 操作总结

Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。 数据流是一串连续不断的数据的集合,就象水管里的水流,在水管的一端一点一点地供水,而在水管的另一端看到的是一股连续不断的水流。数据写入...

2017-11-19 11:51:06

阅读数:41

评论数:0

Java 异常处理的误区和经验总结

本文着重介绍了 Java 异常选择和使用中的一些误区,希望各位读者能够熟练掌握异常处理的一些注意点和原则,注意总结和归纳。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。 误区一、异常的选择 图 1. 异常分类 图 1 描述了异常...

2017-11-19 11:48:10

阅读数:43

评论数:0

Spring 基础知识汇总

Spring简介 Spring框架由Rod Johnson开发,2004年发布了Spring框架的第一版。Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通用步骤,留给开发者的仅仅是与特定应用相关的部分,从而大大提高了企业应用的开发效率。 Spring总结起来优点...

2017-11-19 11:37:56

阅读数:28

评论数:0

Java 集合框架面试问题集锦

Java集合框架(例如基本的数据结构)里包含了最常见的Java常见面试问题。很好地理解集合框架,可以帮助你理解和利用Java的一些高级特性。下面是面试Java核心技术的一些很实用的问题。 Q:最常见的数据结构有哪些,在哪些场景下应用它们? A. 大部分人都会遗漏树和图这两种数据结构。树和图都是...

2017-11-19 11:33:52

阅读数:65

评论数:0

一张图读懂 Java 多线程

1、带着疑问看图1)竞争对象的锁和竞争CPU资源以及竞争被唤醒2)何种情况下获取到了锁,何种情况下会释放锁2、还是那张图3、详细图解1)Thread t = new Thread(),初始化一个线程,实际上就是一个普通对象,此时他的状态为New2)t.start(); 线程处于就绪状态(可运行状态...

2017-11-19 11:25:16

阅读数:48

评论数:0

Java 程序员应该知道的10个面向对象理论

面向对象理论是面向对象编程的核心,但是我发现大部分Java程序员热衷于像单例模式、装饰者模式或观察者模式这样的设计模式,而并没有十分注意学习面向对象的分析和设计...

2017-11-19 11:18:59

阅读数:39

评论数:0

Java 实现数据结构——树

文章目录` 一 树的概念与应用场景 1.1 二叉查找树 1.2 AVL树 1.3 红黑树 1.4 B树 二 树的操作与源码实现 2.1 TreeMap/TreeSet实现原理 更多文章:https://github.com/guoxiaoxing...

2017-11-18 14:03:16

阅读数:62

评论数:0

Java 的深拷贝和浅拷贝

基本知识 Java在运行时的内存使用分两块:栈内存与堆内存。 只就变量而言,栈内存上分配一些基本类型的变量(如int、boolean)与对象的引用,而堆内存分配给真正的对象本身以及数组等,堆内存上的数据由栈内存上的相应变量引用,相当于栈中存储着堆内存中实际对象或数组的标记或别名(实际上...

2017-11-18 14:00:47

阅读数:41

评论数:0

Java 中的闭包之争

闭包一直都是Java社区中争论不断的话题,很多语言例如JavaScript,Ruby,Python等都支持闭包这个语言特性,闭包功能强大且灵活,Java并没有显式地支持它,但其实Java中也存在着所谓的”闭包”. 本文作者为: SylvanasSun.转载请务必将下面这段话置于文...

2017-11-18 13:58:50

阅读数:60

评论数:0

Java 构造器注意事项

构造器决不能调用可被覆盖的方法,并简单理解声明类型和实际类型。 超类的构造器在子类的构造器运行之前运行,也就是说,在创建对象时,先运行超类中的构造器,然后再运行子类中的构造器,此时,如果在执行超类构造器的时候,构造器执行了可覆盖的方法,那么就会去调用子类中的该方法,而此时子类还未被实...

2017-11-18 13:53:09

阅读数:50

评论数:0

理解 Java 序列化

序列化作用 注意事项 Java 序列化的缺点 举例说明 项目中曾遇到的一个小问题 参考 序列化定义:将一个对象编码成一个字节流,称作将该对象序列化,反之,将字节流重新构建成对象,则称作反序列化。 序列化作用 序列化将对象编码成字节流,主要用于对象的持...

2017-11-18 13:46:18

阅读数:48

评论数:0

35 个 Java 代码性能优化总结

代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以...

2017-11-18 13:10:37

阅读数:38

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭