日期:2014-05-18  浏览次数:20641 次

一个java类库的原文件怎么解释?
谁能解释一下:为什么URL调用了URLStreamHandler的抽象方法?
package   java.net;

import   java.io.IOException;
import   java.io.InputStream;
import   java.io.File;
import   java.io.OutputStream;
import   java.util.Hashtable;
import   sun.net.util.IPAddressUtil;
import   sun.net.www.ParseUtil;


public   abstract   class   URLStreamHandler   {
  .....
        abstract   protected   URLConnection   openConnection(URL   u)   throws   IOException;
......
}

package   java.net;

import   java.io.IOException;
import   java.io.InputStream;
import   java.io.OutputStream;
import   java.util.Hashtable;
import   java.util.StringTokenizer;
import   sun.security.util.SecurityConstants;

public   final   class   URL   implements   java.io.Serializable   {
.....
transient   URLStreamHandler   handler;
.....
  public   URLConnection   openConnection()   throws   java.io.IOException   {
return   handler.openConnection(this);
        }
.....
}

------解决方案--------------------
因为handler不是URLStreamHandler ,而是它的一个子类,已经实现了所有的abstract方法