基于类的类变量-不清楚

时间:2019-06-11 18:34:44

标签: java class getter-setter

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

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

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

我可以创建一个Class变量,如下所示: 然后,我可以为其创建一个吸气剂:public PageInfo getWebpage(){return webpage;}

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

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 

}

1 个答案:

答案 0 :(得分:0)

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

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

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

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