在java中,“x=(某物)”是什么意思?
我学过Android,但还不懂java,在示例代码中发现了以下语句:在java中,“x=(某物)”是什么意思?,java,android,syntax,Java,Android,Syntax,我学过Android,但还不懂java,在示例代码中发现了以下语句: TextView mainTextView; mainTextView = (TextView) findViewById(R.id.main_textview); 所以,问题是正如标题所说:什么是=。。。意思?这意味着findViewById方法正在将XML元素强制转换为TextView。为Object TextView创建objectref TextView mainTextView; findViewById是一个具
TextView mainTextView;
mainTextView = (TextView) findViewById(R.id.main_textview);
所以,问题是正如标题所说:什么是=。。。意思?这意味着findViewById方法正在将XML元素强制转换为TextView。为Object TextView创建objectref
TextView mainTextView;
findViewById是一个具有参数R.id.main_textview的方法,返回值被转换为textview类型并存储在mainTextView中
mainTextView = (TextView) findViewById(R.id.main_textview);
findViewById方法具有以下签名:
public View findViewById (int id)
这意味着它返回一个通用的非指定视图
因为您的代码显然需要处理类层次结构TextView中更具体的内容,所以通过在findViewById返回的值之前加上TextView,将其类型转换为TextView
虽然这是一种常见的做法,但它有点危险,因为它假定findViewById返回的值在本例中是TextView类型。如果不是,您将得到一个运行时异常,它是赋值语句,Java中最基本的构造之一。我建议在尝试编写Android应用程序之前至少学习Java语言的基础知识。将一种类型转换为另一种类型而不是将XML元素转换为TextView。将视图强制转换为文本视图。findViewById返回视图对象视图是XML元素。它在布局文件中声明和访问。视图是Java对象。Android使用XML定义布局和其他项目的值。XML不是Java对象的一种类型。@dharms是的,您是正确的。我只是说对象是从XML派生的。findViewById允许Android运行时基于给定的XML参数填充正确的对象。