我是Java的初学者,遇到过这行代码:
Button orderButton = (Button)findViewById(R.id.order);
(Button)
在括号内的含义是什么?
将它放入内部的术语是什么?
答案 0 :(得分:6)
这是一个类型演员。您将结果转换为typeof(Button)
答案 1 :(得分:3)
转换的目的是允许执行环境和IDE知道findViewById(R.id.order)返回的对象的类型;
findViewById(R.id.order)不返回特定类型,而是返回通用对象。由于Button包含与对象引用的项相关的方法,因此您需要告诉它其类型,以便新变量orderButton可以访问正确的方法。
这是一个简单的样本
http://www.java-samples.com/showtutorial.php?tutorialid=1170
答案 2 :(得分:1)
是typecast。 findViewById
返回View
个对象,但您需要一个Button
对象。 (Button)
将视图转换为按钮
答案 3 :(得分:1)
这称为类型转换。 findViewById(R.id.order);
返回的对象可能是Button
延伸的对象。编写代码的人认为该函数调用返回的对象实际上是Button
的实例,因此他将函数的返回值类型转换为Button
的实例。