Closed. This question needs details or clarity。它当前不接受答案。












想改善这个问题吗?添加详细信息并通过editing this post阐明问题。

去年关闭。



Improve this question





我在一个类中有以下方法,但我不了解其目的:

私有PageInfo getPage(){}(请注意,PageInfo是大写的)。

PageInfo是一个类,它与众不同,因为通常在类的方法内使用吸气剂。

我可以将Class变量创建为:private PageInfo页面;
然后,我可以为其创建一个getter:public PageInfo getWebpage(){返回网页;}

但是,目前尚不清楚其目的和原因。
我将不胜感激,并在此先感谢!

private PageInfo getWebPage(URL url, URL parentUrl) throws IOException
{
    HttpURLConnection connection = (HttpURLConnection)url.openConnection();
    int responseCode = connection.getResponseCode();
    String contentType = connection.getContentType();
    // Note: contentLength == -1 if NOT KNOWN (i.e. not returned from server)
    int contentLength = connection.getContentLength();
    PageInfo p = new PageInfo(url,parentUrl,contentType,contentLength,responseCode);
    InputStreamReader rdr =
        new InputStreamReader(connection.getInputStream());
    p.extract(rdr);
    rdr.close();
    connection.disconnect();
    return(p);
}


解决:

上面的方法是在不同的类中编写的,方法名称之前是其类的名称。该方法的名称不符合命名约定(不需要)。它的方法access修饰符默认情况下是无效的,因为没有声明修饰符,因此它假定不返回任何内容,但是该规则被接受。因此,它可以返回其Class PageInfo的初始化。否则,可以将其设置为return null(返回:null;)。

private MyClass getInfo() {
    int e = 300;
    int t = 10;
    MyClass z = new MyClass(22);

    return  z; // z is the initialization of MyClass
               // return null; is also valid


}

最佳答案

听起来您似乎希望此方法成为基于其命名约定的访问器。

相反,它看起来像是从提供的url生成PageInfo对象的私有帮助器方法(实际上,它对需要附加参数的构造函数进行调用,该参数是从提供的参数派生的)。没有看到更大的上下文,我无法确切地告诉您目的是什么,但是它肯定不会做与您在私有类变量和公共访问器示例中描述的相同的事情。

希望这会有所帮助-否则,我建议您澄清问题或提供其他代码。

编辑:您用intellij-idea标记了它-如果您使用的是IDE,请尝试突出显示方法名称并按alt-f7键来查找用法。这应该为您提供有关在何处调用此方法以及为什么调用此方法的一些见解。

09-30 20:12