<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[gzwilliam的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/gzwilliam</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; gzwilliam]]></copyright><item><title><![CDATA[深入abstract class和interface ]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274697</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274697</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 10:15:00 +0800</pubDate><description><![CDATA[abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制，正是由于这两种机制的存在，才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性，甚至可以相互替换，因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实，两者之间还是有很]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （6）]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274679</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274679</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 10:02:00 +0800</pubDate><description><![CDATA[5. 延迟重画操作对于图形用户界面的应用来说，性能低下的主要原因往往可以归结为重画屏幕的效率低下。当用户改变窗口大小或者滚动一个窗口时，这一点通常可以很明显地观察到。改变窗口大小或者滚动屏幕之类的操作导致重画屏幕事件大量地、快速地生成，甚至超过了相关代码的执行速度。对付这个问题最好的办法是忽略所有“迟到”的事件。建议在这里引入一个数毫秒的时差，即如果我们立即接收到了另一个重画事件，可以停止处理当前]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （5）]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274677</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274677</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 10:00:00 +0800</pubDate><description><![CDATA[这一篇中介绍的内容适合于图形用户界面的应用（Applet和普通应用），要用到AWT或Swing。 1. 用JAR压缩类文件Java档案文件（JAR文件）是根据JavaBean标准压缩的文件，是发布JavaBean组件的主要方式和推荐方式。JAR档案有助于减少文件体积，缩短下载时间。例如，它有助于Applet提高启动速度。一个JAR文件可以包含一个或者多个相关的Bean以及支持文件，比如图形、声音、]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （4） ]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274672</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274672</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 09:58:00 +0800</pubDate><description><![CDATA[13. JDBC与I/O如果应用程序需要访问一个规模很大的数据集，则应当考虑使用块提取方式。默认情况下，JDBC每次提取32行数据。举例来说，假设我们要遍历一个5000行的记录集，JDBC必须调用数据库157次才能提取到全部数据。如果把块大小改成512，则调用数据库的次数将减少到10次。在一些情形下这种技术无效。例如，如果使用可滚动的记录集，或者在查询中指定了FOR UPDATE，则块操作方式不再]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （3） ]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274671</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274671</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 09:55:00 +0800</pubDate><description><![CDATA[7. 生成主键在EJB之内生成主键有许多途径，下面分析了几种常见的办法以及它们的特点。利用数据库内建的标识机制（SQL Server的IDENTITY或Oracle的SEQUENCE）。这种方法的缺点是EJB可移植性差。由实体Bean自己计算主键值（比如做增量操作）。它的缺点是要求事务可串行化，而且速度也较慢。利用NTP之类的时钟服务。这要求有面向特定平台的本地代码，从而把Bean固定到了特定的O]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （2）]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274664</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274664</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 09:53:00 +0800</pubDate><description><![CDATA[前面介绍的改善性能技巧适合于大多数Java应用，接下来要讨论的问题适合于使用JSP、EJB或JDBC的应用。1. 使用缓冲标记一些应用服务器加入了面向JSP的缓冲标记功能。例如，BEA的WebLogic Server从6.0版本开始支持这个功能，Open Symphony工程也同样支持这个功能。JSP缓冲标记既能够缓冲页面片断，也能够缓冲整个页面。当JSP页面执行时，如果目标片断已经在缓冲之中，则]]></description><category></category></item><item><title><![CDATA[Java 性能优化技巧集锦 （1）]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/274662</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/274662</guid><author>gzwilliam</author><pubDate>Mon, 31 Jan 2005 09:51:00 +0800</pubDate><description><![CDATA[1.用new关键词创建类的实例时，构造函数链中的所有构造函数都会被自动调用。但如果一个对象实现了Cloneable接口，我们可以调用它的clone()方法。clone()方法不会调用任何类构造函数。在使用设计模式（Design Pattern）的场合，如果用Factory模式创建对象，则改用clone()方法创建新的对象实例非常简单。例如，下面是Factory模式的一个典型实现：]]></description><category></category></item><item><title><![CDATA[Java中的String str="abc"; String str=new String("abc");和String str = new String();的区别以及==与equals()的不同。]]></title><link>https://blog.youkuaiyun.com/gzwilliam/article/details/191196</link><guid>https://blog.youkuaiyun.com/gzwilliam/article/details/191196</guid><author>gzwilliam</author><pubDate>Mon, 22 Nov 2004 20:51:00 +0800</pubDate><description><![CDATA[        Java运行环境有一个字符串池，由String类维护。执行语句String str="abc"时，首先查看字符串池中是否存在字符串"abc"，如果存在则直接将"abc"赋给str，如果不存在则先在字符串池中新建一个字符串"abc"，然后再将其赋给str。执行语句String str=new String("abc")时，不管字符串池中是否存在字符串"abc"，直接新建一个字符串"a]]></description><category></category></item></channel></rss>