相关疑难解决方法(0)

Java中的最终类不应该是最终的,反之亦然?

我最近在一次采访中被问到这个问题:

你可以在Java API中命名任何不应该是最终的类,或者那个不应该且应该是'的类吗?

我什么都想不到.这个问题意味着我应该知道所有的API类,比如我的手,我个人不希望任何Java开发人员知道.

如果有人知道任何此类课程,请提供示例.

java final class

27
推荐指数
2
解决办法
1664
查看次数

MALICIOUS_CODE EI_EXPOSE_REP中等

我针对我的所有代码运行findbugs,只解决了最重要的问题.我终于解决了最重要的问题,现在我正在查看细节.我有一个简单的实体,比如一个用户:

public class User implements Serializable
{
    protected Date birthDate;

    public Date getBirthDate()
    {return(birthDate);}

    public void setBirthDate(final Date birthDate)
    {this.birthDate = birthDate;}
}
Run Code Online (Sandbox Code Playgroud)

这个课程是不完整的,所以不要因为它错过了它serialVersionUID和其他标准的东西,我只关心birthDate安全漏洞.

现在,根据findbugs报告,由于我返回对可变对象的引用,这是一个潜在的安全风险.但在实践中,这究竟有多重要?

http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP

我想在这种情况下我仍然没有真正看到问题所在.我应该通过long并设置日期吗?

沃尔特

java security findbugs

17
推荐指数
2
解决办法
2万
查看次数

抑制Java Findbugs错误(EI_EXPOSE_REP)

我有一个Java gettor方法,如下所示:

import java.util.Date;
//...
public Date getSomeDate() {
  return someDate;
}
Run Code Online (Sandbox Code Playgroud)

和Findbugs报告这暴露了一个可变对象:"可以通过返回对可变对象的引用来公开内部表示".我将代码更改为:

import java.util.Date;
//...
public Date getSomeDate() {
  return new Date(someDate.getTime());
}
Run Code Online (Sandbox Code Playgroud)

但Findbug仍然报告相同的漏洞.我还能做些什么来抑制/解决这个问题?我在IntellJ 10 Findbugs插件中运行Findbugs 1.3.9.

java findbugs date

6
推荐指数
1
解决办法
8229
查看次数

如何解决EI_EXPOSE_REP2及其错误的原因

我在项目中运行了FindBugs,并收到以下警告:

new foo.pkg.Key(Client, Product, Date, String) may expose internal representation by storing an externally mutable object into Key.expireDate   MALICIOUS_CODE  EI_EXPOSE_REP2  60  Medium
Run Code Online (Sandbox Code Playgroud)

Key是一个实体,它有一个Date expireDate带有各自的getter和setter 的实体,它在构造函数中使用它们.

那么,怎么了?为什么这到底是错的?是因为Date是一个可变类型吗?

实际上,我只是返回一个(Date) dataNascimento.clone(),并在setter中使用相同的策略.这是更好的方法吗?

java findbugs

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

标签 统计

java ×4

findbugs ×3

class ×1

date ×1

final ×1

security ×1