是否有可能在rxjava中获得两个Observable的笛卡尔积?
像这样的东西:
A -> 1,2,3
B -> a,b
A x B -> (1, a), (1, b), (2, a), (2, b), (3, a), (3, b)
Run Code Online (Sandbox Code Playgroud) 我只是在学习java,我遇到了一些问题.这里我们有简单的工厂模式:
public class SomeFactory {
...
public static void registerProduct(String name, Class<? extends IProduct > f)
}
public SomeProduct implements IProduct {
static {
SomeFactory.register("some product", SomeProduct.class);
}
...
}
Run Code Online (Sandbox Code Playgroud)
所有产品都应在工厂注册.
但在使用此代码之前,应加载所有Products类.我可以放在Class.forName()某个地方,例如在main函数中.但我想避免这种手动类加载.我想添加新的IProduct
实现,而不更新其他部分(例如SomeFactory或Main方法等).但我想知道,是否有可能自动加载一些类(例如标有注释)?
PS我想注意,在运行时不会添加其他类,所有IProduct实现在编译之前都是已知的.
UPD#1
感谢您的回答!但是有可能使用IProduct实例生成自动生成的属性文件吗?我的意思是有可能制作一些生成属性文件或加载器代码的构建时脚本(例如maven)吗?有这样的解决方案或框架吗?
UPD#2 我完成了使用Reflections库,它通过在启动时扫描类路径来提供运行时信息.
/proc/pid/environ如果流程修改了环境,是否可以从文件中获取相关信息?我的测试表明setenv/putenv/clearenv不要更新environ文件.但是,bash它可以调用unset ENV并查看procfs中的更改.
我需要编写一些特定于Linux的系统守护进程(它将以root权限运行).
我有刻板印象,Qt是关于GUI应用程序的,所以依赖于Qt的守护进程看起来很奇怪.
另一方面,Qt为DBUS/threads/settings/...提供了很好的C++绑定 - 我的守护进程需要的一切.
现在我感兴趣,用Qt编写非GUI系统工具/守护进程是否可以?有这样的工具的例子吗?