当前位置:  开发笔记 > 编程语言 > 正文

学习JAVA需要帮助理解getLogger()的概念.info()(Method Chaining)

如何解决《学习JAVA需要帮助理解getLogger()的概念.info()(MethodChaining)》经验,为你挑选了1个好方法。

我遇到了以下代码行:

getLogger().info("Text Goes Here");  // This command outputs the text to console

我理解对象如何工作和被调用的基础知识,但在我在youtube上观看的视频中,vivz(作者),从未解释过在方法中调用方法(至少我认为在上面的代码中发生了这种情况).

他解释说

ClassName.variable
xVariable.method()

但没有任何关系

someMethod().anotherMethod();

在初学者的术语中,任何人都可以解释这个概念或对这里发生的事情的一些解释吗?

基本上,我想知道,如果info()是一个方法里面getLogger(),或者是什么getLogger(),并info()在这种情况下?



1> YoungHobbit..:

这称为方法链接.

方法链接是invoking multiple method calls面向对象编程语言的常用语法.每个方法都返回一个对象,允许在单个语句中将调用链接在一起,而不需要变量来存储中间结果.

它不是方法里面的方法,这是两个方法调用.首先getLogger()调用,然后调用返回值(object)info(String).您在一个语句中链接两个方法调用.

我将举例说明一下String.concat():

public static void main(String[] args) {
  String first = "First";
  // Storing the resulting instance and then call again.
  String s1 = first.concat(" Second");
  s1 = s1.concat(" Third.");

  System.out.println(s1);
  // This is method chaining using String class with concat() method.
  String s2 = first.concat(" Second").concat(" Third.");
  System.out.println(s2);  
}

这里String.concat()返回String连接后的实例.现在,您可以选择将实例存储在变量中,然后再次调用concat()on或直接使用相同的实例.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有