看不太懂的一段Java代码,请大家指点。

问题描述:

[code="java"]
public static TxtDocument load( String filename ) throws IOException
{
return load( new FileInputStream( filename ) );
}
[/code]
在类TxtDocument 里面定义了一个load方法,但是里面只有一句return,而且又是一个莫名其妙的load方法调用?该类没有继承任何类,只是继承了java.awt.print.Pageable的Pageable接口。

请问大家这种写法是什么原理?我能得到什么返回值?return时调用的load方法来自哪里?

谢谢!

[quote]return时调用的load方法来自哪里[/quote]

在TxtDocument 里或者TxtDocument 的父类里,或者一直再父类。你要是用Eclipse 按住CRTL建,单击这个load就知道他在哪里啦!

这就是重载。在TxtDocument 至少有两个load方法,只是他们参数不一样。一个是接受String类型的参数,一个接受FileInputStream类型的参数!

嗯,是重载。
如果该类中没有,那么有两个可能:
1.load(InputStream)方法存在于父类,这是调用的父类方法。
2.TxtDocument是抽象类,所以load方法只存在于接口java.awt.print.Pageable中,有待于子类实现。