本文主要是介绍JAVA CLASS PATH 的同名类加载顺序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Java相同全限定名的类加载顺序
https://blog.csdn.net/changerzhuo_319/article/details/78925184
java的classpath中如果出现了同名类,同名的类的代码不同,那只用的到底是哪一个类呢?
java -cp ./;./classes;./xptest.jar com.ssc.xp.ws.TestClassLoaderA
Java代码
- package com.ssc.xp.ws;
- public class TestClassLoaderA {
- public static void main(String[] args) {
- String a = "Hi! Man, This is ClassA, V0";
- System.out.println(a);
- }
- }
同一个类,改两次,分别生成V0,V1的class和V2的jar。进行测试。
classpath中顺序放在前面的类会比放在后面的类优先级高,也就是说,./加载的class,比xptest。jar中的class优先级要高。运行时跑的就是前者的类。
这篇关于JAVA CLASS PATH 的同名类加载顺序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!