标签: java

如何让方法返回传递给它的参数?

考虑一个方法签名,如:

public String myFunction(String abc);
Run Code Online (Sandbox Code Playgroud)

Mockito可以帮助返回方法收到的相同字符串吗?

java mockito

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

什么是堆栈跟踪,如何使用它来调试应用程序错误?

有时,当我运行我的应用程序时,它会给我一个错误,如下所示:

Exception in thread "main" java.lang.NullPointerException
        at com.example.myproject.Book.getTitle(Book.java:16)
        at com.example.myproject.Author.getBookTitles(Author.java:25)
        at com.example.myproject.Bootstrap.main(Bootstrap.java:14)
Run Code Online (Sandbox Code Playgroud)

人们将此称为"堆栈跟踪".什么是堆栈跟踪?有什么能告诉我程序中发生的错误?


关于这个问题 - 我经常看到一个问题,一个新手程序员"得到一个错误",他们只是粘贴他们的堆栈跟踪和一些随机的代码块,而不了解堆栈跟踪是什么或如何使用它.这个问题旨在作为新手程序员的参考,他们可能需要帮助来理解堆栈跟踪的价值.

java debugging stack-trace

622
推荐指数
7
解决办法
38万
查看次数

617
推荐指数
11
解决办法
57万
查看次数

什么是原始类型,为什么我们不应该使用它?

问题:

  • 什么是Java中的原始类型,为什么我经常听说不应该在新代码中使用它们?
  • 如果我们不能使用原始类型,它有什么替代方案,它是如何更好的?

java generics raw-types

617
推荐指数
13
解决办法
20万
查看次数

Spring Framework究竟是什么?

我听到很多关于Spring的消息,人们在网上都说Spring是一个很好的Web开发框架.Spring Framework究竟是什么?

java spring frameworks web-applications web

607
推荐指数
11
解决办法
26万
查看次数

为什么静态变量被视为邪恶?

我是一名Java程序员,对企业界不熟悉.最近我使用Groovy和Java 开发了一个应用程序.我编写的所有代码都使用了相当多的静态代码.高级技术部门要求我减少使用的静力学数量.我用Google搜索了同样的东西,我发现很多程序员都反对使用静态变量.

我发现静态变量使用起来更方便.而且我认为它们也是有效的(如果我错了,请纠正我),因为如果我必须对一个类中的函数进行10,000次调用,我很乐意将该方法设置为静态并使用简单的方法Class.methodCall()而不是用10,000个类的实例来混乱内存,对吧?

此外,静态减少了代码其他部分的相互依赖性.他们可以充当完美的国家持有者.除此之外,我发现静态在一些语言中得到广泛实现,如Smalltalk和Scala.那么为什么程序员(尤其是Java世界)中普遍存在对静态的压迫呢?

PS:如果我对静力学的假设是错误的,请纠正我.

java static

606
推荐指数
16
解决办法
23万
查看次数

如何在Java中将字节数组转换为十六进制字符串?

我有一个字节数组填充十六进制数字和打印它简单的方法是非常没有意义的,因为有许多不可打印的元素.我需要的是以下形式的确切十六进制代码:3a5f771c

java hex bytearray

606
推荐指数
16
解决办法
67万
查看次数

Spring Data JPA中的CrudRepository和JpaRepository接口有什么区别?

Spring Data JPA CrudRepository和JpaRepository接口有什么区别?

当我在网上看到这些例子时,我看到它们在那里可以互换使用.他们之间有什么区别?你为什么要用一个而不是另一个?

java spring jpa spring-data spring-data-jpa

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

杰克逊与JSON:未被识别的领域,没有标记为可忽略

我需要将某个JSON字符串转换为Java对象.我正在使用Jackson进行JSON处理.我无法控制输入JSON(我从Web服务中读取).这是我的输入JSON:

{"wrapper":[{"id":"13","name":"Fred"}]}
Run Code Online (Sandbox Code Playgroud)

这是一个简化的用例:

private void tryReading() {
    String jsonStr = "{\"wrapper\"\:[{\"id\":\"13\",\"name\":\"Fred\"}]}";
    ObjectMapper mapper = new ObjectMapper();  
    Wrapper wrapper = null;
    try {
        wrapper = mapper.readValue(jsonStr , Wrapper.class);
    } catch (Exception e) {
        e.printStackTrace();
    }
    System.out.println("wrapper = " + wrapper);
}
Run Code Online (Sandbox Code Playgroud)

我的实体类是:

public Class Student { 
    private String name;
    private String id;
    //getters & setters for name & id here
}
Run Code Online (Sandbox Code Playgroud)

My Wrapper类基本上是一个容器对象,用于获取我的学生列表:

public Class Wrapper {
    private List<Student> students;
    //getters & setters here
}
Run Code Online (Sandbox Code Playgroud)

我一直收到这个错误,"包装"返回null.我不确定缺少什么.有人可以帮忙吗?

org.codehaus.jackson.map.exc.UnrecognizedPropertyException: 
    Unrecognized field …
Run Code Online (Sandbox Code Playgroud)

java data-binding json jackson

602
推荐指数
30
解决办法
69万
查看次数

通过wget在Linux上下载Java JDK会显示许可证页面

当我尝试从Oracle下载Java时,我最终下载了一个页面,告诉我需要同意OTN许可条款.

抱歉!

要从Oracle Technology Network下载产品,您必须同意OTN许可条款.

一定要......

  • 您的浏览器已启用"cookies"和JavaScript.
  • 您单击了要接受的产品的"接受许可".
  • 您在接受许可后的30分钟内尝试下载.

我如何下载和安装Java?

java linux install wget

602
推荐指数
11
解决办法
42万
查看次数