抱歉这个愚蠢的问题.
我非常确定,Java API提供了一个包装引用的类,并为它提供了一个getter和setter.
class SomeWrapperClass<T> {
private T obj;
public T get(){ return obj; }
public void set(T obj){ this.obj=obj; }
}
Run Code Online (Sandbox Code Playgroud)
我对吗?Java API中是否有这样的东西?
谢谢.
是的,我可以自己写,但为什么我应该模仿现有的功能呢?
编辑:我想将它用于参考参数(如C#中的ref关键字),或更具体,以便能够"写入方法参数";)
我更具体地问这个问题:
使用Netbeans,是否有可能创建一个额外的自定义构建目标,它将:
笔记:
我有两个类(A和B),它们在以下意义上相互依赖:
每个类都有一个执行某些操作的方法.
每个类的动作取决于另一个类的动作.
因此,如果用户调用类A的操作,它应该自动调用类B的操作.
对于另一种方式.但是应该防止无限循环.
我找到了一些处理这个问题的代码,但对我来说似乎有些愚蠢:锁定阻止了无限循环.
import java.util.concurrent.locks.*;
import static java.lang.System.*;
import org.junit.*;
public class TEST_DependentActions {
static class A {
private B b = null;
private final ReentrantLock actionOnBLock = new ReentrantLock();
public void setB(B b) {
this.b = b;
}
public void actionOnB() {
if (!actionOnBLock.isLocked()) {
actionOnBLock.lock();
b.actionOnA();
actionOnBLock.unlock();
}
}
}
static class B {
private A a = null;
private final ReentrantLock actionOnALock = new ReentrantLock();
public void setA(A a) {
this.a = …
Run Code Online (Sandbox Code Playgroud) 我看过帖子:
查看.jar文件的内容
以及
如何列出JAR文件中的文件?
但遗憾的是,我找不到一个好的解决方案来实际读取 JAR的内容(逐个文件).
此外,有人可以给我一个提示,或指向一个资源,我的问题在哪里讨论?
我只能想到一个不那么直接的方法来做到这一点:
我可以以某种方式将JAR资源列表转换为内部JAR URL列表,然后我可以使用openConnection()打开它.
我想使用脚本一次更新大量SVN版本的项目.一个接一个地运行更新作业需要很长时间.
所以我试着并行运行这些工作.它似乎工作,但我不确定它是否正确完成.也许有没有我想到的并发问题?
请看一下脚本:
#!/bin/sh
time (
for f in `ls -d */`
do
(
OUTPUT=`svn update $f`
echo -e "= = = = = = = = = = $f \n$OUTPUT"
) &
done
wait
)
Run Code Online (Sandbox Code Playgroud)
当我不先存储输出时,它会全部混淆.
你觉得,这样可以吗?
注意:当没有很多要更新时,40个项目的加速度实际上是20左右.