2013-12-20 46 views
2

我已经开始学习“开始Android应用程序开发”。我在下面看到了这个代码。
我对Java很新,有人可以解释一下作者如何使用点运算符调用不同的方法,而不必使用引用变量和类名。
作者指的是java中的什么概念?了解Java中的概念

case 0: 
return new AlertDialog.Builder(this) 
.setIcon(R.drawable.icon) 
.setTitle(“This is a dialog with some simple text...”) 
.setPositiveButton(“OK”, new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
    Toast.makeText(getBaseContext(), 
    “OK clicked!”, Toast.LENGTH_SHORT).show(); 
... 

回答

6

这就是所谓的Method chaining的方法。基本上每个方法调用都会返回对象本身,因此您可以调用返回值的另一个方法。

实现方法链接的API通常被称为提供fluent interface

0

这是 - >new AlertDialog.Builder(this)这里

这相当于调用这个函数

setIcon(R.drawable.icon) 
setTitle(“This is a dialog with some simple text...”) 
setPositiveButton() 

方法Chaning

方法链是调用多个方法调用的技术。它可以使代码更具可读性并帮助提供流畅的界面。方法链有时被过度使用,并且会使调试变得困难,因此术语“火车残骸”。设置对象的属性时,我发现方法链最有用。

示例: 这是方法chaning。

person.setName("Peter").setAge(21).introduce(); 

这不是chaning

person.setName("Peter"); 
person.setAge(21); 
person.introduce(); 
0

它被视为一行代码,直到所有括号关闭后的最后一个分号。它只是为了便于阅读而分开放置,否则它会是一长串代码。