上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 21 下一页
摘要: 创建型模式,就是用来创建对象的模式,用来帮助一个系统 去创建、组合和表示它的那些对象。GoF23种设计模式中创建型模式有5中,分别是:工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、单例模式(Singleton)、建造者模式(Bulider)、原型模式(Prototype)。(1)工厂方法模式(Factory Method):定义一个创建产品对象的工厂类,由该工厂统一创建继承了统一个接口的多个产品对象。根据创建策略的不同,又分为3中类型。 》工厂方法模式:为普通的工厂方法模式。 》多个工厂方法模式:提供了多个工厂方法,分别创建不同的产品对... 阅读全文
posted @ 2014-03-29 10:48 成风魄郎 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 有一个很简单的例子,java.util中的类ArrayList实现了接口List则生成ArrayList对象时可用以下语句. List list=new ArrayList(); 也就是说所有实现了接口List的类,都可以用List接口来声明对象类型,然后用实体类进行实例化.这表明了接口可以用来作为类型的表述.当然,生成的对象list只能调用接口List中提供的方法. 同样的操作也可以用在父类与子类身上,例如设A类是B类的父类 则创建B类对象的时候可以用以下语句 A b=new B();这样的用法可以大大提高编程的灵活性.~***Tank implements moveableinterfac 阅读全文
posted @ 2014-03-29 10:01 成风魄郎 阅读(2206) 评论(0) 推荐(0) 编辑
摘要: Java里面由于不允许多重继承,所以如果要实现多个类的功能,则可以通过实现多个接口来实现。Java接口和Java抽象类代表的就是抽象类型,就是我们需要提出的抽象层的具体表现。OOP面向对象的编程,如果要提高程序的复用率,增加程序的可维护性,可扩展性,就必须是面向接口的编程,面向抽象的编程,正确地使用接口、抽象类这些太有用的抽象类型做为java结构层次上的顶层。Java接口和Java抽象类有太多相似的地方,又有太多特别的地方,究竟在什么地方,才是它们的最佳位置呢?把它们比较一下,你就可以发现了。1、Java接口和Java抽象类最大的一个区别,就在于Java抽象类可以提供某些方法的部分实现,而Ja 阅读全文
posted @ 2014-03-29 09:57 成风魄郎 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 1.开闭原则:软件系统对拓展开放,对修改关闭。做到开闭原则,注意一下两点:(1)多使用抽象类。在设计类是,对于拥有共同功能的相似类进行抽象化处理,将公有的功能部分放到抽象类中,所有的操作都调用子类。(2)多使用接口。与抽象类不同,接口只定义子类应该实现的接口函数,而不实现公有的功能。在现在大多数的软件开发中,都会为类定义接口,这样在扩展子类时实现该接口。2.接口隔离原则:使用多个隔离的接口,比使用单个接口好 阅读全文
posted @ 2014-03-28 21:41 成风魄郎 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 1、抽象类中的抽象方法(其前有abstract修饰)不能用private、static、synchronized、native访问修饰符修饰。原因如下:抽象方法没有方法体,是用来被继承的,所以不能用private修饰;static修饰的方法可以通过类名来访问该方法(即该方法的方法体),抽象方法用static修饰没有意义;使用synchronized关键字是为该方法加一个锁。。而如果该关键字修饰的方法是static方法。则使用的锁就是class变量的锁。如果是修饰 类方法。则用this变量锁。但是抽象类不能实例化对象,因为该方法不是在该抽象类中实现的。是在其子类实现的。所以。锁应该归其子类所有。 阅读全文
posted @ 2014-03-28 21:18 成风魄郎 阅读(571) 评论(0) 推荐(0) 编辑
摘要: JPA Java Persistence API,是Java EE 5的标准ORM接口,也是ejb3规范的一部分。Hibernate,当今很流行的ORM框架,是JPA的一个实现,但是其功能是JPA的超集。JPA和Hibernate之间的关系,可以简单的理解为JPA是标准接口,Hibernate是实现。那么Hibernate是如何实现与JPA的这种关系的呢。Hibernate主要是通过三个组件来实现的,及hibernate-annotation、hibernate-entitymanager和hibernate-core。hibernate-annotation是Hibernate支持annot 阅读全文
posted @ 2014-03-28 18:22 成风魄郎 阅读(3275) 评论(0) 推荐(1) 编辑
摘要: 为什么要使用属性驱动和模型驱动struts2与struts很大的不同点在于,struts的execute方法提供了HttpServletRequest和HttpServletResponse方法在获取客户端提交的数据信息的时候需要使用HttpServletRequest的getParameter()方法,并且还需要进行必要的数据类型转换。如何客户端提交的数据量大的时候,我们则需要写很多的getParameter方法。这样代码量就相应的增加不少。但是struts2为我们提供了属性驱动和模型驱动,它不需要我们写很多的获取值的方法。而只需要我们在Action中定义相应的getter方法,在界面上以A 阅读全文
posted @ 2014-03-27 17:24 成风魄郎 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 学习Struts2也有一段时间了,今天用Servlet写了一个验证码,然后搬到Struts2中,惊奇地发现Servlet无法访问,出现404错误!后来折腾了半天,终于找出原因了。这也算我学习中的一个重大发现吧。写下来给大家分享一下:在李刚编写的《Struts2权威指南》一书中,他用的是Struts2.0*版本。而我在开发中用的是Struts2.1*版本的构包。其中有很大不同就是,新版本对servlet实现了过滤,而旧版本并未对其进行过滤!原来我的web.xml定义了一个struts的Filter过滤所有用户请求,如下:struts2org.apache.struts2.dispatcher.F 阅读全文
posted @ 2014-03-11 21:17 成风魄郎 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 程序一般都是在用户做log off的时候发个指令去删除session,然而浏览器从来不会主动在关闭之前通知服务器它将要被关闭,因此服务器根本不会有机会知道浏览器已经关闭。服务器会一直保留这个会话对象直到它处于非活动状态超过设定的间隔为止。之所以会有这种错误的认识,是因为大部分session机制都使用会话cookie来保存session id,而关闭浏览器后这个session id就消失了,再次连接到服务器时也就无法找到原来的session。如果服务器设置的cookie被保存到硬盘上,或者使用某种手段改写浏览器发出的HTTP请求报头,把原来的session id发送到服务器,则再次打开浏览器仍然 阅读全文
posted @ 2014-03-08 18:31 成风魄郎 阅读(5247) 评论(1) 推荐(1) 编辑
摘要: int 是基本类型,直接存数值 integer是对象,用一个引用指向这个对象 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前者>>integer 是后者(也就是一个类) Integer是对象类型int是原始类型适用场合有很大的不同之所以要把int封装成Integer型是因为很多方法参数就只接收对象类型(Object)还比如范型就只支持对象类型例如往ArrayList里面add,必须add的是Object而int不是对象,就只能把Integer添加进去 2.初始化时>> int i =1; Integer i= new Integer(1);(要把 阅读全文
posted @ 2014-03-05 09:34 成风魄郎 阅读(325) 评论(0) 推荐(0) 编辑
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 21 下一页