小编Pét*_*rök的帖子

对java Mock文件的建议(模拟java.io.File)

有没有人有java模拟File对象的建议?我使用的是需要获取java.io.File对象作为参数的第三方类.我通过webservice(也是他们的产品之一)在流中接收此文件的数据.

一种解决方案是将所有这些数据写入文件并将其提供给类.这是一个我不喜欢的解决方案:它消除了使用Web服务而不是仅下载文件的优势.

更快更有效的方法是将这些数据从内存中放入Mock文件中,并将此Mock文件提供给第三方类.

它可能必须是一个扩展java.io.File的MockFile,并覆盖与硬盘上的文件实际连接的所有函数.

我知道第三方应该使用流作为输入参数而不是文件.但是,这超出了我的影响范围.

java unit-testing file mocking

10
推荐指数
1
解决办法
1万
查看次数

有人可以提供脆弱基类问题的更好例子吗?

脆弱的基类是在每次讨论中出现的最常见点之一,其中讨论了通过实现继承的可重用性.

除了常见的方形,矩形示例之外,有没有人遇到任何真正的问题.

每次我需要向某人解释这一点时,我会遇到一些现实世界的情况,这些问题引起了这些问题以及如何解决这个问题.

如果有人想分享他们对此的经验,那将非常有帮助.

这是一个了解这个问题的维基百科链接

维基百科上的脆弱基类

编辑:

我对此的输入...问题主要发生在基类版本更改时,因为使用它的开发人员可能不知道基类实现发生的扩展,并且基类实现者可能没有关于所有必要的详细信息所有派生类.看似无害的更改可能会破坏所有派生类功能.无论如何,这是一个糟糕的设计实践,因为它将打破OCP原则.

在软件旧论坛上得到了Joel的好评.把它放下来的想法.

"我们无法有时处理现代生活的复杂性,实际上是自然界中脆弱的基类问题的一个例子,原因是我们仍然继承了我们祖先的许多特征,这些特征导致了不同的生活."

oop inheritance

9
推荐指数
1
解决办法
1937
查看次数

C++字符为int

当你cin >>写入int变量时会发生什么?我尝试使用简单的代码添加2个int数字,首先读取它们,然后添加它们.但是当我输入信件时,它就会失败并打印出大量的数字.但是什么导致了这个错误?我的意思是,我希望它加载并使用该字母的ASCII码.

c++

9
推荐指数
2
解决办法
8362
查看次数

有没有办法让IDEA生成的GUI代码可见?

我在IntelliJ的IDEA中创建了一个非常简单的项目,基本上只是一个包含JButton的JToolBar的表单,当我尝试启动它时,我得到了一个N​​PE形式.$$$ setupUI $$$ - 但是没有这样的东西是反映在实际的form.java中,所以我没办法调试它或追踪bug.

有没有办法让IDEA显示(甚至让我改变)"魔法"生成的代码?

java user-interface code-generation intellij-idea

9
推荐指数
1
解决办法
7019
查看次数

使用传递给方法的lambda表达式是否会降低实体框架查询的速度?

我有一个方法:

public static void GetObjects()
{
    using(MyContext context = new MyContext())
    {
         var objects = context.Bars.Where(b => b.Prop1 != null)
                       .Select(b => new MyObject{Prop = b.Prop1, Name = b.Name})
                       .ToList();
         foreach(var object in objects)
         {
             // do something with the object
         }
    }
}
Run Code Online (Sandbox Code Playgroud)

我重构了方法,使其更通用,以便我可以传入一个,Func以便我可以指定where语句,并将Bars表中的属性分配给MyObject.Prop这样:

public static void GetObjectsV2(Func<Bar, bool> whereFunc, Func<Bar, string> selectPropFunc)
{
    using(MyContext context = new MyContext())
    {
         var objects = context.Bars.Where(whereFunc)
                       .Select(b => new MyObject{Prop = selectPropFunc(b), Name …
Run Code Online (Sandbox Code Playgroud)

c# linq-to-entities delegates entity-framework

9
推荐指数
2
解决办法
1612
查看次数

为什么C#允许方法/成员在类是内部时公开

我有一个我标记为内部的类,我将字段和方法标记为公共.它编译时没有错误或警告.是否有任何特定的需要将方法作为public和class作为内部(除非它们是从接口或类实现的)?

c# oop

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

8
推荐指数
1
解决办法
1万
查看次数

Java中finally块的要点是什么?

我想以下例子; 但无法弄清楚finally块的重要性是什么.你能告诉我这两个代码示例的执行区别吗?现实生活中的例子也很有帮助.

样本1:

    try{
       // some code 1
    }catch(Exception ex){
       // print exception   
    }finally{
       // some code 2            
    }
Run Code Online (Sandbox Code Playgroud)

样本2:

    try{
      // some code 1
    }catch(Exception ex){
      // print exception   
    }
    // some code 2
Run Code Online (Sandbox Code Playgroud)

java exception-handling finally

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

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

有什么方法或工具可以用来验证我的API在Java中是否是线程安全的?

我制作了一个工具并为外部世界提供了一个API,但我不确定它是否是线程安全的.因为用户可能希望在多线程环境中使用它.有什么方法或工具可以用来验证我的API在Java中是否是线程安全的?

java concurrency multithreading thread-safety

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