Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android(或Java本身)中,类是否可以从名称引用的类继承?_Java_Android - Fatal编程技术网

在Android(或Java本身)中,类是否可以从名称引用的类继承?

在Android(或Java本身)中,类是否可以从名称引用的类继承?,java,android,Java,Android,很久以前,我一直在寻找一种以编程方式启动ServiceMode的方法。最大的障碍是如何理解类必须接收的参数(在它的例子中,是密码)。当然,设备必须是根设备 这需要大量的研究,但我最终找到了通过命令行启动系统活动的方法。现在我想创建一个扩展自它的类。然而,我没有它的API引用,因为它隐藏在Android内部,只能通过反射等方式访问。我只有它的名字:com.sec.android.app.servicemodeapp.servicemodeapp 因此,我想知道Android/Java API是否允

很久以前,我一直在寻找一种以编程方式启动ServiceMode的方法。最大的障碍是如何理解类必须接收的参数(在它的例子中,是密码)。当然,设备必须是根设备

这需要大量的研究,但我最终找到了通过命令行启动系统活动的方法。现在我想创建一个扩展自它的类。然而,我没有它的API引用,因为它隐藏在Android内部,只能通过反射等方式访问。我只有它的名字:com.sec.android.app.servicemodeapp.servicemodeapp

因此,我想知道Android/Java API是否允许我以以下形式创建一个类声明:

public class MyCustomSystemActivity extends Class.forName("com.sec.android.app.servicemodeapp.ServiceModeApp") { ... }
当然,这句话是不允许的


如果可能的话,有人能给我一个提示吗?如果是的话,我该如何申报呢?

不,这是不可能的。在Java等编译语言中,编译器需要知道哪些成员被继承,哪些方法被重写,如果它不知道扩展的是什么类,它就无法做到这一点。

是什么让你认为
com.sec.android.app.servicemodeapp.servicemodeapp
首先存在于你的进程中?可能是Commonware的副本,我确信,因为我可以使用“adb shell am start-n the.package.name/the.class.name”调用它。另外,我可以在LogCat中查看它的标签。您已经指出,这是一个活动存在于您未编写的应用程序中。您正在编写一个不同的应用程序。是什么让您认为此类将存在于您的应用程序和流程的Dalvik虚拟机中?无法从不在虚拟机中的类继承。那么,你认为这门课是从哪里来的呢。。。这就是我要寻找答案的地方。我的应用程序中没有它的定义。但我想知道我是否可以从Android的/Soal/App目录中得到它的引用,在某种程度上,我会考虑你的答案AJB。我无法从已编译的应用程序中获得任何引用的断言非常令人信服。