- 博客(31)
- 资源 (3)
- 收藏
- 关注
原创 Java-The full process of initialization
由于Java中的所有事物都是对象, 所以许多动作就变得更加容易, 加载动作仅仅是其中之一.Java中每个类的编译代码都存在于它自己的独立的文件中. 该文件只在需要使用程序代码时才会被加载. 可以说:"类的代码在初次使用时才加载". 这通常是指直到类的第一个对象被构建时才发生加载, 但是当访问static字段方法时, 其也会发生加载.初次使用之处也是static初始化发生之处. 所有的static对
2008-03-29 18:51:00 1578
原创 Java-Choose between Composition and Inheritance
先介绍两个概念增量开发继承技术的优点之一就是它支持增量开发模式. 你可以引入新代码(包括覆盖基类代码)而不会在现有代码中引发bug; 事实上, 这种模式可以将新的bug隔离在新的代码之中.即使出现bug, 也知道它是在新代码中, 易于差错.切记: 继承代表着对一种关系的展示, 即"此新类是彼旧类的一种类型".向上转型"为新类提供方法"并不是继承技术中最重要的方面, 其最重要的方面是用来表现
2008-03-29 18:13:00 1035
转载 J2EE-URL解释
统一资源定位符 (Uniform Resource Locator, URL) URL是统一的,因为它们采用相同的基本语法,无论寻址哪种特定类型的资源(网页、新闻组)或描述通过哪种机制获取该资源。对于Intranet服务器或万维网服务器上的目标文件,可以使用“统一资源定位符 (URL)”地址(该地址以“http://”开始)。Web服务器使用“超文本传输协议 (HTTP)”,一种“幕后的”Inte
2008-03-29 09:18:00 1820
原创 Java-Inheritance for Code Reuse
复用代码(代码重用机制)java问题解决是围绕着类展开的. 可以通过创建新类来复用代码(利用现有类形成新类). 有两种方法可以达到这一目的: (1)在新类中产生现有类的对象. 由于新类是由现有类的对象所组成, 所以这种方法称为组合. 该方法只是复用了现有程序代码的功能, 而非它的形式.(2)按照现有类的形式来创建新类. 采用现有类的形式并在其中添加新代码. 称为继承.继承: 除非已明确指出要
2008-03-29 09:10:00 939
转载 J2EE-PL/SQL工具连接Oracle数据库的方法
摘录11.利用Oracle Net Manager工具 (1)打开Oracle Net Manager (2)增加"服务命名" 第一步 NET服务名:任意填写 第二步 通讯协议:如果连接远程机器上的Oracle,选择TCP/IP(internet协议) 第三步 主机名:输入IP地址 端口号:一般缺省为1521 第四步 SID:一般和数据库名字相同 第五步 测试
2008-03-28 11:39:00 2280
原创 J2EE-初级者常见问题
Q:JAVA需要什么样的环境变量,这些环境变量有什么作用?A:JAVA程序能够顺利编译需要两个环境变量,一个是PATH(path),一个是CLASSPATH(classpath)。那么这两个环境变量代表什么呢?或者说究竟在JAVA程序编译中有什么作用呢?这就要涉及到WINDOWS的基本知识了。在WINDOWS环境中,每一条能用的指令都保存在硬盘的“某个角落”,比如说指令NOTEPAD(WIND
2008-03-28 11:08:00 2256 1
转载 Java-绝对地址与相对地址/绝对定位与相对定位
Q:绝对地址与相对地址?绝对定位与相对定位?A:绝对地址:形如http://www.windstudio.net/index.htm或file://d:/homepage/index.htm这样的地址,就是文件在网络或本地的绝对位置;相对地址:就是被链接文件相对与当前页面的地址,比如说,链接和当前页面同级的文件地址只要用“文件名”即可;链接当前页面下级子目录下的文件用“目录名/文件名”;链接当前页
2008-03-28 10:40:00 3427
转载 Java-相对路径/绝对路径
1.基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz test.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"/"代表Web应用的跟目录。
2008-03-28 10:24:00 721
原创 Java-Composition for Code Reuse
复用代码(代码重用机制)java问题解决是围绕着类展开的. 可以通过创建新类来复用代码(利用现有类形成新类). 有两种方法可以达到这一目的: (1)在新类中产生现有类的对象. 由于新类是由现有类的对象所组成, 所以这种方法称为组合. 该方法只是复用了现有程序代码的功能, 而非它的形式.(2)按照现有类的形式来创建新类. 采用现有类的形式并在其中添加新代码. 称为继承./** *//** *
2008-03-27 10:12:00 1362
原创 Java-Notes Documents
1.注释:编译时, /*和*/之间的所有东西都会被忽略. 在连续注释内容的每一行都以一个*开头.2.注释文档:将代码和文档放到同一个文件中有利于二者的统一管理, 这就需要特殊的注释语法和一个提取注释的工具.提取注释的工具:javadoc, 查找程序中的特殊注释标签, 解析由这些标签标记的信息, 同时将毗邻注释的类名or方法名提取出来.javadoc输出的是一个html文件. 有个java
2008-03-26 15:22:00 865
原创 Java-InnerClass-06
/**//*引用外围类对象:在外围类名称后面跟一个句点和this关键字来实现.eg:在类Sequence.SSelector中,通过Sequence.this,内部类任何方法都能获取那个指向外围类Sequence的被保存的引用. *对象要想生成其自身内的内部类的对象,必须在new中提供一个引用,指向那个外围类对象.eg:Contents con = parcel.new Contents();
2008-03-23 13:27:00 637
原创 Java-InnerClass-05
/**//*Destination.java:*/public interface Destination...{ String readLabel();}/**//*Contents.java:*/public interface Contents...{ int readValue();}/**//*Wrapping.java:*/public class Wrappin
2008-03-23 13:16:00 597
原创 Java-InnerClass-04
如果不需要内部类对象与其外围类对象之间有联系,那么可以将内部类申明为static.称为嵌套类.嵌套类相当于外部定义的类.这种类很少使用.普通的内部类对象隐式地保存了一个引用,指向创建它的外围类对象.然而,当内部类是static时就不是这样了.嵌套类意味着:1.要创建嵌套类的对象,并不需要其外围类的对象;2.不能从嵌套类的对象中访问非静态的外围类对象;3.普通内部类的字段和方法,只能放在类的外部层次
2008-03-23 13:06:00 870
原创 Java-InnerClass-03
Java内部类:名字隐藏+代码组织当生成一个内部类的对象时,此对象与制造它的外围对象(enclosing object)之间就有了一种联系:它能访问其外围对象的所有成员,而不需要任何条件.此外,内部类还拥有其外围类的所有元素的访问权.为什么内部类会自动拥有对其外围类所有成员的访问权:当外围类的对象创建了一个内部类对象时(内部类的对象只能在与其外围类的对象相关联的情况下才能被创建.构建内部类对象时,
2008-03-23 13:00:00 903
原创 Java-InnerClass-02
Java自带了很好的隐藏机制:只给予某个类"包访问权"(仅在同一个包内可见),而用不着把类创建为内部类. 当将内部类向上转型为其基类,尤其转型为一个接口的时候,内部类就有了用武之地. 从实现了某个接口的对象,得到对此接口的引用,与向上转型为这个对象的基类,实质上效果是一样的. 这是因为此内部类(某个接口的实现)对于其他人来说能够完全不可见(而不只是包外不可见)且不可用.所得到的只是指向基类or接
2008-03-23 12:57:00 544
原创 Java-InnerClass-01
内部类可以直接访问外部类的成员,包括private成员,但内部类的成员却不能被外部类直接访问(很好理解,和类中方法体规则一样). 在内部类对象保存了一个对外部类对象的引用.当内部类的成员方法中访问某一变量时,如果在该方法和内部类中都没有定义过这个变量,内部类中对this的引用会被传递给那个外部类对象的引用./** *//************************简单举例******
2008-03-23 12:47:00 907
原创 Java-单态设计模式
设计模式是在大量的实践总结和理论化之后优选的代码结果,编程风格,以及解决问题的思考方式.设计模式就像是经典的棋谱,不同的棋局我们用不同的棋谱.单态设计模式:采取一定的方法保证在整个软件系统中,对某个类只能产生一个对象实例,并且该类只提供一个取得其对象的实例方法.在java中实现单态模式只需要执行以下三步: 1.将类的构造方法的访问权限声明为private.这样就不能用new操作符在类的外部产
2008-03-15 18:04:00 1144
原创 Java-初始化问题
构造器无法阻止自动初始化的运行,它将在构造器被调用之前发生. class Counter{ int i; Counter(){i = 7;} } i首先会被置0,然后变成7.对于所有基本类型和对象引用,包括在定义时已经指定初值的变量,这种情况都是成立的.因此编译器不会强制你一定要在构造器中or在使用它们之前对元素进行初始化.初始化顺序:在类的内部,变量定义的先后顺序决定了初始化的顺序.即使变
2008-03-15 16:33:00 853
原创 关于System.in.read() && float字段的条件判断 && System.arraycopy(),Arrays.sort()
import java.io.IOException;import java.util.Arrays;class test...{ public static void main(String[] args)...{ try...{ char charest; do...{ charest = (ch
2008-03-12 10:27:00 605
原创 Java-参数的传递
class PassParam4...{ int obj_param; public static void main(String[] args)...{ int param; param = 50; changeParam(param);//调用1:基本变量类型的传递(掌握此时栈内存,堆内存的关系)
2008-03-11 22:01:00 714
原创 Java-关于static
private PassParam paramObj = new PassParam();前面没有必要加private,因为paramObj在作用域终点就消失了。 Java对象不具备和基本类型一样的生命周期,当用new创建一个Java对象时,它可以存活于作用之外 { String s = new String("a String"); } 引用s在作用域终点就消失了。然而s指向的String对
2008-03-11 21:49:00 2086 2
原创 Java垃圾回收器
垃圾回收器只知道释放那些由new分配的内存。一旦垃圾回收器准备回收new对象,将首先调用finalize()方法,该方法能在垃圾回收时刻做一些清理工作。这意味着在你不需要某个对象之前,如果必须执行某些动作,那么你得自己去做(finalize()方法)。通常不能指望finalize(),必须创建其他的"清理"方法,并且明确的调用它们。finalize()作用:对象"终结条件"的验证。cl
2008-03-11 20:58:00 1499
原创 Java代码执行顺序-简单版
class Yao...{ public static void main(String[] args)...{ System.out.println("Yao想参加奥运会"); } static American american = new American();}class American...{ American()...{
2008-03-11 18:08:00 1181
原创 Java代码执行顺序-样例
class Insect...{ private int i = 9; int j; Insect()...{ System.out.println("i=" + i + ",j=" + j); j=37; } private static int x1 = print("static Insect.x1.initi
2008-03-11 17:49:00 763
原创 static方法(与隐式static方法)
static方法就是没有this的方法.在static方法的内部不能调用非静态方法,反过来,非静态方法倒是可以调用static方法.值得注意的是:这里说的是在static方法内部,不能直接调用非static方法,但可以通过生成对象来调用非静态方法.在static方法内部,也不可以调用非static变量,其实道理很简单,因为static是面向全局的,相当于全局方法,不可能只针对某个类中的一般变量而
2008-03-11 17:42:00 876
原创 关于"多态"static方法的理解
要强调的是,多态性只发生于方法,而不发生于域.并且,对于方法,只有那些非static与非final方法才具有多态性. 这里讨论的是static方法不能发生多态.值得注意的是,所谓的static方法不能多态指的是:override的方法本身是不是static的,而不是指调用override方法的方法是不是static的!比如以下程序: class Father ...{ p
2008-03-11 17:32:00 1538
原创 基类构建中的一个问题
class IntNode...{ private int info; public void setInfo(int info) ...{ this.info = info; } public int getInfo()...{ return info; }}class IntSLList...{ private IntNode
2008-03-04 22:03:00 789
原创 Java-Arrays-equals
import java.util.Arrays;class ArraysEquals...{ public static void main(String[] args)...{ int[] q = new int[]...{1,2,3}; int[] p = new int[]...{1,2,3}; boolean equals1 = equa
2008-03-04 20:57:00 3341
原创 Java-this
假设我们有一个容器类和一个部件类(部件属于容器),在容器类的某个方法中要创建部件类的实例对象,而部件类的构造方法要接收一个代表其所在容器的参数。 class Container...{ Component comp; public void addComponent()...{ comp = new Component(this); }}class Co
2008-03-04 20:37:00 575
原创 Java重载Constructor的相互引用(keyword:this)
class Person...{ String name; String hobby; String wife; int age; public Person(String name)...{ this.name = name; } public Person(String hobby,String wife)...
2008-03-04 20:28:00 834
原创 BubbleSort
class BubbleSort...{ public static int[] bubbleSort(int[] array)...{ for(int i=0;iarray.length-1;i++)...{ for(int j=0;j(array.length-i)-1;j++)...{ if(array[j]>
2008-03-04 20:16:00 634
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人