小编emo*_*ory的帖子

是否真的有必要在JUnit拆解方法中使对象无效?

我对类似问题的答案很感兴趣.我认为这是不正确的.所以我创建了一些测试代码.我的问题是,这个代码是否证明/反驳/不确定在拆解方法中使成员变量无效的假设?我用JUnit4.8.1测试了它.

JUnit为4个测试中的每个测试创建一个新的测试类实例.每个实例都包含一个Object obj.此obj也作为静态WeakHashMap的键插入.如果JUnit释放对测试实例的引用,则关联的obj值将被弱引用,因此符合gc条件.测试试图强制gc.WeakHashMap的大小将告诉我objs是否是gc'ed.一些测试使obj变量无效,而其他测试则没有.

import org . junit . Before ;
import org . junit . After ;
import org . junit . Test ;
import java . util . ArrayList ;
import java . util . WeakHashMap ;
import java . util . concurrent . atomic . AtomicInteger ;
import static org . junit . Assert . * ;

public class Memory
{
    static AtomicInteger idx = new AtomicInteger ( 0 ) ;

    static WeakHashMap < Object , …
Run Code Online (Sandbox Code Playgroud)

java junit

14
推荐指数
1
解决办法
6924
查看次数

使用MacBookPro主机在docker容器上运行GUI应用程序

我一直在尝试按照https://learning-continuous-deployment.github.io/docker/images/dockerfile/2015/04/22/docker-gui-osx/上关于在Docker容器中运行GUI应用程序的说明进行操作MacBookPro主机(使用Docker工具).

我使用Fedora 23创建了一个简单的docker容器并安装了firefox.

我尝试运行firefox,大约一分钟后,我收到以下错误:

Unable to init server: Broadway display type not supported: 192.168.57.3:0
Error: cannot open display: 192.168.57.3:0
Run Code Online (Sandbox Code Playgroud)

有没有人知道错误意味着什么和/或如何解决它?

macos socat docker xquartz

12
推荐指数
1
解决办法
5891
查看次数

如何创建抛出IOException的Java Iterator

我想实现一个从磁盘/网络中检索对象的迭代器.

Iterator itr = getRemoteIterator();
while(itr.hasNext()) {
    Object element = itr.next();
    System.out.print(element + " ");
}
Run Code Online (Sandbox Code Playgroud)

然而问题是,hasNext()next()该方法的迭代器对象不允许扔IOException.是否还有其他标准接口可以解决此问题?

期望的代码是:

public interface RemoteIterator<E> {
    boolean hasNext() throws IOException;
    E next() throws IOException;
    void remove();
}
Run Code Online (Sandbox Code Playgroud)

java iterator ioexception java-7

8
推荐指数
2
解决办法
3642
查看次数

无法将ArrayList <subtype>转换为ArrayList <type>

我正在编写一个模拟人工神经网络的程序.我设置了以下类和接口:

public interface Neuron
{
}

// Input neuron
public class INeuron implements Neuron
{
}

// Output and hidden neuron
public class ONeuron implements Neuron
{
}

public interface Layer
{
    public ArrayList<Neuron> getNeurons();
}

// Input layer
public class ILayer implements Layer
{
    ArrayList<INeuron> neurons = new ArrayList<INeuron>();

    public ArrayList<Neuron> getNeurons()
    {
        return neurons;
    }

    // other stuff appropriate to the input layer
}
Run Code Online (Sandbox Code Playgroud)

编译器报告"无法从ArrayList <INeuron>转换为ArrayList <Neuron>".

我试过转换东西.例如:ArrayList<Neuron> neurons = new ArrayList<INeuron>().但这似乎只是将同样的错误转移到了班级的不同部分.

我不明白为什么INeuron不能被隐含地投射到Neuron,因为INeuron是神经元的一个子类型.

java arraylist type-conversion

3
推荐指数
1
解决办法
6811
查看次数

在java中如何避免多个if else with map for isAssignableFrom

我想避免if else,在java中:

 for (Class clazz : method.getParameterTypes()) {
  if (SomeClass.class.isAssignableFrom(clazz)) {
      arguments[i] = onearg;
    } else if (SomeOtherClass.class.isAssignableFrom(clazz)) {
      arguments[i] = someotherarg;
    }
 }
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议如何做到这一点?谢谢

java

3
推荐指数
1
解决办法
888
查看次数

意外行为与最终修饰符相关

这是我的代码

package alpha ;

class A1
{
    static class A11
    {
        private
            final // WHAT IS THE EFFECT OF THIS MODIFIER?
            void fun ( String caller )
            {
                System . out . println ( "A11:\t" + caller ) ;
            }
    }

    static class A12 extends A11
    {
        private void fun ( String caller )
        {
            super . fun ( caller + caller ) ;
        }
    }

    public static void main ( String [ ] args )
    {
        A12 a12 = …
Run Code Online (Sandbox Code Playgroud)

java final private modifiers

2
推荐指数
1
解决办法
286
查看次数

SYSO(System.out.println())的作用是什么?

SYSO有什么影响System.out.println()?如果我的计算机正在执行一项大型工作,例如从数据库中取出2个Lakhs(大约2,000,000条)记录到文件,SYSO会影响执行时间吗?

java system out println

0
推荐指数
1
解决办法
1373
查看次数