首先申明一点,抽象类是不能被实例化的,这个是java基础,毋庸置疑,但是在mybatis源码中,
XPathParser.java这个类中,有一个commonConstructor方法,在这个方法中
但XPathFactory是抽象类,此处却调用newInstance()方法,不甚理解,还望各位老师前辈指点一二 !
我了解了一下,newInstance()和new关键字都是实例化类的过程,只是稍有不同,并不影响实例化类这个事实。
首先申明一点,抽象类是不能被实例化的,这个是java基础,毋庸置疑,但是在mybatis源码中,
XPathParser.java这个类中,有一个commonConstructor方法,在这个方法中
但XPathFactory是抽象类,此处却调用newInstance()方法,不甚理解,还望各位老师前辈指点一二 !
我了解了一下,newInstance()和new关键字都是实例化类的过程,只是稍有不同,并不影响实例化类这个事实。
如果你顺着newInstance()方法找下去你会找到
XPathFactoryFinder类_newFactory方法
在225行return new XPathFactoryImpl();
XPathFactoryImpl是XPathFactory的实现类