我正在从log4j版本1切换到log4j版本2.我需要使用此签名复制方法的功能:
org.apache.log4j.ProperyConfigurator.configure(InputStream s);
Run Code Online (Sandbox Code Playgroud)
也就是说,我需要以编程方式从InputStream设置log4j属性.在我的环境中,使用显式log4j.properties文件不是一个选项.
另请注意,这适用于客户端,而不是服务器/ servlet.
我如何在log4j版本2中执行等效操作?
我想在java中编译这个代码的一些变体.
class X
{
List<X> getvalue(){...};
}
class Y extends X
{
List<Y> getvalue(){...};
}
Run Code Online (Sandbox Code Playgroud)
Javac(1.6)返回错误,因为List <Y>和List <X>不兼容.
关键是我希望编译器能够识别List <Y>是List <X>的兼容返回类型,如果Y是X的子类型.我想要的原因是简化用户定义工厂的使用类.
注意:这个问题有点像 这个问题, 但对于java.