类加载器和重复的包和类名

时间:2013-12-05 02:29:49

标签: java android maven classloader

我正在使用带有maven的AndroidStudio。我不明白的是重复的类如何不会混淆类加载器和构建过程。

我创建了自己的android.util.Log类(比如,我在我的应用程序中创建了一个android.util包,并在其中创建了我自己的Log类,而不是使用标准的android Log.d,我用自己的。这是如何以及为什么有效?

我读过有3个类加载器 - 你的应用程序类加载器,第三方库类加载器和系统类加载器。那么它们是否具有某种优先级,如果您的应用程序类加载器找到.class文件,那么它会被“链接”?和任何其他重复的.class文件无关紧要?

和...为什么这种行为不会导致任何类型的构建错误/警告?

一个例子是......说我想用反射来调用我和android都会提供的某个私有类。我想保证它是否称为我的或ANdroid,没有碰撞导致崩溃。但是我想确切地知道为什么/它如何运作我看到它的工作方式。

1 个答案:

答案 0 :(得分:0)