JAVA
文章平均质量分 68
一圈儿的云
爱摇滚,爱编程,爱java,喜欢钻研算法,和所有软件工程师一样,希望凭自己的努力改变世界
展开
-
两种创建String对象的区别
创建String对象,我们可以用两种方式: 1, String s = new String("Victory");2, String s = "Victory";那么这两种方式的区别是?先看一个程序:String s1,s2; s1=new String("we are students"); s2=new转载 2014-04-14 17:14:27 · 690 阅读 · 0 评论 -
OOP 多态和构造器执行顺序
OOP 多态和构造器执行顺序在java的面试题中,对象的初始化顺序配合多态是一种常见考题!今天我就来详细的回顾一下!类中一般包括这几个部分:静态成员 包括静态的成员变量 静态代码块、非静态的成员变量构造函数 (其实也是一种静态方法,只不过static是隐式的)静态方法和非静态方法 Java尽力保证,所有变量在使用前都能得到恰当的初始化方法的局部变量 java以编译时错误的形式来贯彻这种保原创 2015-10-28 12:27:07 · 599 阅读 · 0 评论 -
Java中的回调机制
Callback 回调机制Java中没有c/c++中函数指针的概念,而回调操作(callback)通过接口进行实现!作为对比,面向对象的小兄弟 —- C#通过委托(delegate)完成对于方法的调用,同时委托是面向对象且是类型安全的!今天我们着重来讲Java中的回调机制,这在GUI编程等基于事件的编程框架得到广泛的应用!回调的应用场景: Boss不像一直监视员工的工作进程,对员工说,你工作做完原创 2015-10-29 23:02:42 · 443 阅读 · 0 评论 -
Java 语言中的函数编程
Java 语言中的函数编程利用闭包和高阶函数编写模块化的 Java 代码如果您从事大型企业项目开发,您就会熟悉编写模块化代码的好处。良构的、模块化的代码更容易编写、调试、理解和重用。Java 开发人员的问题是,函数编程范型长期以来只是通过像 Haskell、Scheme、Erlang 和 Lisp 这样的特殊语言实现的。在本文中,作者 Abhijit Belapur转载 2015-10-30 08:55:23 · 552 阅读 · 0 评论 -
反射没有什么神奇之处
反射没有什么神奇之处Class类与java.lang.reflect类库一起对于 反射 的概念进行了支持,该类库包含了Field Method 以及Constructor 类(每个类都实现了Member接口)。这些类型的对象是有JVM在运行时创建的,用以表示未知类里对应的成员。这样你就可以使用Constructor创建新的对象,用get()和set()方法读取和修改与Field对象关联的字段,用in原创 2015-11-01 18:10:19 · 349 阅读 · 0 评论 -
线程的同步 wait和notify
线程的同步 wait和notify调用sleep()的时候,锁并没有被释放,yield也是这种情况;而调用wait()方法,线程的执行将被挂起,对象上的锁将被释放。这也就以为着,当你调用了wait()的时候,另一个任务可以取得锁,其他的synchronized方法可以在wait()期间被调用。 当你调用wait() 的时候,就是在声明:“我已经做完能做的所有的事情,因此我要在这里等待,但是我希望原创 2015-11-30 21:35:35 · 474 阅读 · 0 评论 -
开发与研发
研发 就是暴露出项目可能会遇到的难题,然后 解决掉 开发 就是更多是体力劳动,然后原创 2016-01-19 08:46:24 · 450 阅读 · 0 评论 -
Hibernate中Criteria的完整用法
criteria英[kraɪˈtɪərɪə]美[kraɪˈtɪrɪə]标准1,CriteriaHibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供了 Criteria和DetachedCriteria 。2,DetachedCriteriaSpring 的框架提供了getHibernateTemplate().f转载 2016-01-19 13:52:37 · 338 阅读 · 0 评论 -
再探Java中的回调
再探Java中的回调其实上次已经揭示了回调的本质,这次只是用匿名内部类,真是穿个马甲我就不认识你啦!AddListener.javapackage com.kanbujian.Event;public interface AddListener { public void add();}WorkQueue.javapackage com.kanbujian.Event;import ja原创 2015-12-03 19:23:22 · 324 阅读 · 0 评论 -
项目重构 ----修改xml文件中的包名
Eclipse批量修改xml文件中的包名时间 2014-02-20 11:27:38 CSDN博客原文 http://blog.csdn.net/mao1055229269/article/details/19545441主题 XML Eclipse Java开发项目经常会遇到修改包名,默认的情况下,修改包名,类里面会自动修改。难题不在这,好多 xml 的配转载 2016-01-06 10:33:02 · 1281 阅读 · 0 评论 -
数据库简单查询
数据库简单查询数据库数据库文件/*Navicat MySQL Data TransferSource Server : MysqlSource Server Version : 50704Source Host : localhost:3306Source Database : csTarget Server Type : MYSQL原创 2015-12-08 21:56:30 · 587 阅读 · 0 评论 -
待翻译---- Understanding Spring MVC Model and Session Attributes
Blog » Java » Understanding Spring MVC Model and Session AttributesUnderstanding Spring MVC Model and Session AttributesBy Jim White+October 19, 2013 Annotations · Java ·转载 2016-01-12 12:07:58 · 582 阅读 · 0 评论 -
Spring事务管理只对出现运行期异常进行回滚
使用spring难免要用到spring的事务管理,要用事务管理又会很自然的选择声明式的事务管理,在spring的文档中说道,spring声明式事务管理默认对非检查型异常和运行时异常进行事务回滚,而对检查型异常则不进行回滚操作。那么什么是检查型异常什么又是非检查型异常呢?最简单的判断点有两个:1.继承自runtimeexception或error的是非检查型异常,而继承自exceptio转载 2016-02-02 13:57:51 · 365 阅读 · 0 评论 -
java传值和传址
public class CallValueOrAddress{ private String name; private int age; public void setName(String name){ this.name=name; } public String转载 2015-11-12 16:40:26 · 461 阅读 · 0 评论 -
工厂模式 Factory Pattern
工厂模式 Factory Pattern工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。原创 2015-09-23 16:15:09 · 423 阅读 · 0 评论 -
Processes and Threads 进程与线程
Processes and Threads 进程与线程简述俗话说的好“纸上得来终觉浅 绝知此事要宫刑”,多线程编程可以最大限度地利用多核心和操作系统的系统,是提高程序运行性能常用的方法!而进程(Process)和进程(Thread)也是计算机利于最基本的概念,虽然如此,当我们真正的想开发高效率的并发应用,却发现对于他们的理解还是不够深刻!在Android中,当app启动时,系统会为这个applica原创 2015-09-21 17:17:51 · 646 阅读 · 0 评论 -
Evaluate Reverse Polish Notation & LeetCode 02
Evaluate Reverse Polis原创 2014-04-14 22:18:08 · 451 阅读 · 0 评论 -
后序遍历 Binary Tree Postorder Traversal -- LeetCode
二叉树的后序遍历我们还是介绍三种方法,第一种是递归,第二种是迭代方法,第三种是用线索二叉树。 递归还是那么简单,算法的时间复杂度是O(n), 而空间复杂度则是递归栈的大小,即O(logn)。代码如下:public ArrayListInteger> postorderTraversal(TreeNode root) { ArrayListInteger> res = new ArrayLi转载 2014-04-15 17:49:19 · 677 阅读 · 0 评论 -
运用快慢指针判断链表是否有环
例题可以参见LeetCode中的Linked List转载 2014-04-15 19:01:06 · 887 阅读 · 0 评论 -
java中栈与队列的实现
虽然大部分人学习数据结构都用的是C或者C++来实现代码,最坑爹的就是cong'jin'mian原创 2014-04-15 18:31:24 · 769 阅读 · 0 评论 -
关于二叉树后续遍历算法的一点思考
二叉树的三种遍历方式,最贱的那个原创 2014-04-15 18:19:35 · 529 阅读 · 0 评论 -
Binary Trees 斯坦福教育库
Binary Treesby Nick ParlanteThis article introduces the basic concepts of binary trees, and then works through a series of practice problems with solution code in C/C++ and Java. Binary trees原创 2014-04-18 20:39:28 · 1115 阅读 · 0 评论 -
二叉树最大 最小深度
二叉树求最大,最小深度是二叉树很基本的问题。在此给出原创 2014-04-22 12:30:54 · 1106 阅读 · 0 评论 -
拓扑排序 两种实现方式
拓扑排序是无环有向图很重要的应用,在任务调度等方面有原创 2014-05-16 20:16:33 · 901 阅读 · 0 评论 -
Sum Root to Leaf Numbers 求路径之和
Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.An example is the root-to-leaf path 1->2->3 which represents the number 123.Find the tota原创 2014-04-25 20:42:26 · 573 阅读 · 0 评论 -
SpringMVC数据验证
SpringMVC数据验证——第七章 注解式控制器的数据验证、类型转换及格式化——跟着开涛学SpringMVChttp://jinnianshilongnian.iteye.com/blog/1733708 7.4、数据验证7.4.1、编程式数据验证Spring 2.x提供了编程式验证支持,详见【4.16.2 数据验证】章节,在此我们重写【4.16.2.4.1、转载 2015-05-17 12:57:32 · 511 阅读 · 0 评论 -
JAVA动态代理实现
JAVA动态代理实现JAVA的动态代理 在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制!代理模式是常用的java设计模式,他的特征是代理类与委托类有原创 2015-05-25 18:31:34 · 416 阅读 · 0 评论 -
Cookie——Session
Cookie Session是跨越编程语言的网站开发的基础知识,对于web application开发的基础。 首先我们知道http协议是面向无连接的,但是很明显在我们日常的网上操作中需要各个网页之间有信息的传递!例如,网上商城的购物车,以及简单的用户登录,这时候就需要cookie 或者session来保存用户的一些信息!1. Cookie cookie是保存在客户端的键值对数据,类似于map。原创 2015-05-25 19:49:39 · 478 阅读 · 0 评论 -
Sax 解析xml in java
Sax 解析xmlSAX,全称Simple API for XML,既是一种接口,也是一种软件包。它是一种XML解析的替代方法。SAX不同于DOM解析,它逐行扫描文档,一边扫描一边解析。由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中,这对于大型文档的解析是个巨大优势。 SAX是一种XML解析的替代方法。相比于文档对象模型DOM,SAX 是读取和操作 XML 数据的更快速、更轻量的原创 2015-07-26 21:59:07 · 426 阅读 · 0 评论 -
Pull 解析xml
Pull 解析xmlxmlpull方式解析xml是android开发中解析xml的推荐方式。XmlPull和Sax类似,是基于流(stream)操作文件,然后根据节点事件回调开发者编写的处理程序。因为是基于流的处理,因此Xmlpull和 Sax都比较节约内存资源,不会象Dom那样要把所有节点以对橡树的形式展现在内存中。 但Xmlpull比Sax更简明,而且不需要扫描完整个流。Java实现在这里我们使原创 2015-07-27 09:38:12 · 366 阅读 · 0 评论 -
客户端跳转与服务器端跳转的区别
客户端跳转与服务器端跳转的区别客户端跳转时用HttPservletResopse对象的sendRedirect函数实现,服务器端跳转是使用RequestDispather对象的forward方法实现的。这两者之间的区别主要体现在三个方面:1. 使用服务器端跳转时,客户浏览器的地址栏并不会显示目标地址的URL,而是用客户端跳转时,地址栏当中会显示目标资源的URL;2. 服务器端跳原创 2015-05-17 11:29:25 · 431 阅读 · 0 评论 -
Android线程池操作
Android多线程操作1. 声明代码运行在线程new Thread(new Runnable() { @Override public void run() { // 输入你想运行在线程的代码 }}).start();实现Runnable接口,实现run()方法,把Runnable任务关联到线程对象,启动线程,会自动执行Runnable任务中run()方法!原创 2015-09-27 16:49:57 · 524 阅读 · 0 评论 -
观察者模式——Observer Pattern
观察者模式-ObserverPattern最近在学习C#中的委托和事件,发现C#中事件响应依赖于委托实现,而记得java中的事件响应,则属于观察者模式!所以就像搞明白,委托和观察者模式的联系和区别!观察者模式:**当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时, 则会自动通知它的依赖对象。观察者模式属于行为型模式。** 介绍原创 2015-10-19 18:55:33 · 432 阅读 · 0 评论 -
深入理解Java 8 Lambda
深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)作者:Lucida微博:@peng_gong豆瓣:@figure9原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language-features本文谢绝转载,如需转载需征得作者本人同意,谢谢。深入理解转载 2016-04-08 16:56:46 · 358 阅读 · 0 评论