"Document" 关键字和“.something”是什么意思?

What is "Document" keyword and ".something" means?

我有这个代码:

Public static List <LinkNode> parse (LinkNode inputLink) {

List <LinkNode> outputLinks = new LinkList<>();

try { 
Document parsedResults = Jsoup
.connect (inputLink.getUrl ())
.timeout (READ_TIMEOUT_IN_MILLISSECS)
.get ();
}

String tag;
Elements elements;
List <LinkNode> result;
}

我对代码有几个问题:

  1. Document是保留关键字吗Java?

    try { 
    Document parsedResults = Jsoup
    .connect (inputLink.getUrl ())
    .timeout (READ_TIMEOUT_IN_MILLISSECS)
    .get ();
    
  2. 这种编码形式是什么(点什么)?我可以用另一种形式写吗如果可以,你能告诉我怎么做吗?

    .connect (inputLink.getUrl ())
    .timeout (READ_TIMEOUT_IN_MILLISSECS)
    .get ();
    

1) 不,它是 Jsoup 库中定义的 class。

2) 它是正常方法调用的一部分,如 Integer.parseInt("5")scanner.readLine().

  1. 不,它不是保留关键字。在这种情况下,Document 是 Jsoup 库中定义的 class 的名称。其他库可以有自己的 class 命名为 Document,或者您可以编写自己的库。例如:

    相反,保留关键字不能用作标识符(即class名称、函数名称、变量名称)。这些词包括classtryifwhilepublic私有 等。查看更大的列表 here

  2. 点 (.) 运算符允许您访问对象的函数或变量。例如 rectangle.widthdog.run()

    您的示例显示了方法链接,其中对前一个方法返回的对象调用后续方法。这消除了创建中间变量的需要并使事情变得更容易(对于您作为程序员以及正在阅读您的代码的人)。

    您可以使用更多代码获得完全相同的结果:

    Connection conn1 = Jsoup.connect(inputLink.getUrl ());
    Connection conn2 = conn1.timeout(READ_TIMEOUT_IN_MILLISSECS);
    Document parsedResults = conn2.get();