java - 抽象类上的 newInstance()?

标签 java android android-fragments abstract-class

我有一个抽象 fragment 类(称为 A)和一个扩展它的 fragment 类(称为 B)。我目前在制作 B 类的对象时调用 newInstance,但我想知道我如何也可以为 A 类做类似的事情,因为我想为 A 类保存默认参数(通过存储参数 Bundle 中的值)。但是由于无法实例化抽象类,我不确定如何保存这些默认值。

最佳答案

这样做声明一个对象 foo 作为对 A 的引用,这样你就可以使用抽象类中的所有元素,然后如果需要任何 B 特性,你将它转换为 B,这是有效的,因为 B 扩展了 A

A foo = new B()
foo.aMethodFromA();
((B)foo).aMethodFromB();

关于java - 抽象类上的 newInstance()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36755335/

相关文章:

android - 工具栏内的 TabLayout

android - 通过按下提交按钮从多个 fragment 获取值到 Activity

java - libimobiledevice 返回奇怪的字符

android - 如何在单个应用程序中实现多个 GCM 推送通知?

android - 对 Android 10 上的外部文件的访问权限被拒绝

java - 未知错误 : java. lang.RuntimeException android.os.Parcel.writeValue

android - 我应该只使用 fragment 还是 Activity 和 fragment 的组合?

java - 抽象类 comp 错误? java

java - JDBC 从包含控制字符的数据库表中读取数据

java - 如何修复 'android.os.NetworkOnMainThreadException' ?