java - 关于android开发中使用java语法的问题

标签 java android syntax

我正在阅读有关 Android 开发的初学者教程,其中的代码中有这样一行:

TextView fortune = (TextView) findViewById(R.id.fortune_text);  

我对 Java 相当陌生,但我了解创建变量的基础知识。因此创建一个新的 int 变量:

int someInt = 4;

看起来与上面的情况有点不同。所以我想我们正在创建 TextView 对象的实例,然后我们从 TextView 类调用 findViewById 方法?但为什么要使用 (TextView) 位呢?我们在这里告诉 java 做什么?

最佳答案

您的示例中的转换与继承有关。 findViewById 方法返回 View 类的实例/对象 - 即它返回一个 View /小部件。 TextView 是您想要访问的对象类型,它是 View 的子类。转换位 - (TextView) - 是您通知编译器您的 Intent 的方式,即您希望访问 TextView 提供的扩展方法集,并且不仅仅是任何 View

可能值得检查 http://download.oracle.com/javase/tutorial/java/IandI/subclasses.html了解更多详情。

关于java - 关于android开发中使用java语法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6224919/

相关文章:

java - contains() 不起作用,但 getAbsolutePath() 起作用

Android:ListActivity 的正确线程

java - 删除圆形进度条中的progressDrawable

c++ - 为什么将函数名用作函数指针等同于将寻址运算符应用于函数名?

reactjs - 在 React Native 中的 const 中插入 if/else 语句的正确方法?

java - 在谷歌标记 Android 上更新 InfoWindowAdapter 中的内容

java - 为什么在 Java 中有两个 Right Shift 运算符而只有一个 Left Shift 运算符?

php - 带符号的三元运算符

java - 如何从java中的方法返回对象的实例

android - Firebase 分发错误 : failed to upload distribution. 处理二进制文件的时间比预期的要长,请重试