2013年10月11日

JDK/Java里的设计模式

摘要: JDK/Java里的设计模式 阅读全文

posted @ 2013-10-11 12:06 heartstage 阅读(140) 评论(0) 推荐(0)

设计模式的设计原则和精神

摘要: 设计模式是什么(1)反复出现问题的解决方案(2)增强软件的灵活性(3)适应软件不断变化Maintainbility&Reusabilityl单一职责原则就一个类而言,应该仅有一个引起它变化的原因。【SRP】如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。软件设计真正要做的许多内容,就是发现职责并把那些职责相互分离。如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。l开放-封闭原则Open-ClosedPrinciple开闭原则,对于 阅读全文

posted @ 2013-10-11 12:04 heartstage 阅读(235) 评论(0) 推荐(0)

举例说明你使用的设计模式

摘要: B2C里的报价策略模式http://www.cnblogs.com/sjms/archive/2010/06/22/1762964.html消息中心,负责处理Email和短消息的发送;适配器模式+Builder模式,XML报文接收和生成 阅读全文

posted @ 2013-10-11 12:04 heartstage 阅读(231) 评论(0) 推荐(0)

Java里的浅复制与深复制

摘要: 1.浅复制与深复制概念 ⑴浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。⑵深复制(深克隆) 被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复制把要复制的对象所引用的对象都复制了一遍。2.Java的clone()方法 ⑴clone方法将对象复制了一份并返回给调用者。一般而言,clone()方法满足: ①对任何的对象x,都有x.clone() !=x//克隆对 阅读全文

posted @ 2013-10-11 08:57 heartstage 阅读(156) 评论(0) 推荐(0)

2013年10月10日

Overload和Override的区别

摘要: 方法的重写(Overriding)和重载(Overloading)是Java多态性的不同表现。 重写(Overriding)是父类与子类之间多态性的一种表现,而重载(Overloading)是一个类中多态性的一种表现。 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding) 。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了.如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型或有不同的参数次序,则称为方法的重载(Overloading)。不能通过访问权限、返回类型、抛出的异 阅读全文

posted @ 2013-10-10 21:42 heartstage 阅读(446) 评论(0) 推荐(0)

Java中String对象的创建

摘要: 字符串对象是一种特殊的对象.String类是一个不可变的类..也就说,String对象一旦创建就不允许修改String类有一个对应的String池,也就是 String pool.每一个内容相同的字符串对象都对应于一个pool里的对象.1 看下面一段代码.String s = new String("abc"); String s1 = "abc"; String s2 = new String("abc"); System.out.println(s == s1); System.out.println(s == s2); Syst 阅读全文

posted @ 2013-10-10 21:38 heartstage 阅读(892) 评论(0) 推荐(1)

String和StringBuffer的机制差别

摘要: String是不可变的,StringBuffer是可变的;StringBuffer是线程安全的,StringBuilder是非线程安全的。 因而在大部分情况下字符串的拼接速度为:StringBuilder>StringBuffer>String 解释如下: 因为String是不可变的(通过ide的debugger可以发现其属性大都为final类型),因此每次对其操作改变其变量值,其实是生成一个新的对象,然后将变量引用指向新对象;因此速度慢。StringBuffer则不同,对其操作即直接操作对象指向的引用,无需产生新对象,速度很快;它是线程安全的,在维护多线程的同步等也会消耗一点性能 阅读全文

posted @ 2013-10-10 21:38 heartstage 阅读(369) 评论(0) 推荐(0)

Servlet规范简介

摘要: 引言Web 框架一般是通过一个 Servlet 提供统一的请求入口,将指定的资源映射到这个 servlet, 在这个 servlet 中进行框架的初始化配置,访问 Web 页面中的数据,进行逻辑处理后,将结果数据与的表现层相融合并展现给用户。 WEB 框架想要在符合 Servlet 规范的容器中运行,同样也要符合 Servlet 规范。将一个 WEB 框架注入到一个 servlet 中,主要涉及到 Servlet 规范中以下部分:部署描述符映射请求到 ServletServlet 生存周期请求分发Servlet 相关技术规范简介部署描述符部署描述符就是位于 WEB 应用程序的 /WEB-INF 阅读全文

posted @ 2013-10-10 21:29 heartstage 阅读(596) 评论(0) 推荐(0)

深入分析 Java 中的中文编码问题

摘要: 编码问题一直困扰着开发人员,尤其在 Java 中更加明显,因为 Java 是跨平台语言,不同平台之间编码之间的切换较多。本文将向你详细介绍 Java 中编码问题出现的根本原因,你将了解到:Java 中经常遇到的几种编码格式的区别;Java 中经常需要编码的场景;出现中文问题的原因分析;在开发 Java web 程序时可能会存在编码的几个地方,一个 HTTP 请求怎么控制编码格式?如何避免出现中文问题?几种常见的编码格式为什么要编码不知道大家有没有想过一个问题,那就是为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是如何表示我们人类能够理解的符号的,这些符号也就是我们人类使用的语言 阅读全文

posted @ 2013-10-10 21:20 heartstage 阅读(172) 评论(0) 推荐(0)

Servlet 3.1 规范

摘要: 在线版目录Servlet3.1规范翻译——前言Servlet3.1规范翻译——概览Servlet3.1规范翻译——Servlet ContextServlet3.1规范翻译——ResponseServlet3.1规范翻译——过滤器Servlet3.1规范翻译——RequestServlet3.1规范翻译——SessionServlet3.1规范翻译——注解和可插拔性Servlet3.1规范翻译——转发请求Servlet3.1规范翻译——Web应用Servlet3.1规范翻译——应用生命周期事件Servlet3.1规范翻译——映射请求到ServletServlet3.1规范翻译——安全Servl 阅读全文

posted @ 2013-10-10 21:17 heartstage 阅读(405) 评论(0) 推荐(0)

导航