java - 私有(private)子类...这是一件坏事吗?

标签 java coding-style

所以我认为自己是一名初级 java/android 开发人员

我总是遇到这些,但从来没有真正喜欢它们并认为它们是肮脏的代码

class herp{
 private class derp extends OnclickListener{
 ...
 }
 private class gerp AsyncTask{
 ...
 }
}

那么我应该尽量避免这些吗?或者甚至确保我从不使用这些?

最佳答案

什么是脏代码、什么不是脏代码是非常主观的。

可以说的是,嵌套类非常有用。通常,它们不需要像这样嵌套,因为它们很可能很容易成为匿名类。

这个想法是:您希望尽可能少的其他类来访问您的小类。您不想创建自己的包,因为您确实属于您已经所在的包。相反,您创建一个私有(private)类。现在只有您可以使用它,这很好,因为它是专为您的类(class)量身定制的。

现在,您将拥有多少个 derp 实例?你很有可能会拥有一个。因此,我不会这样做,而是这样做:

OnClickListener derp = new OnClickListener() {
    // fill in methods to override here
}

它基本上做同样的事情,但我不能重用该类来做任何事情,这很好 - 没有人应该重用一次性类!

关于java - 私有(private)子类...这是一件坏事吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8349614/

相关文章:

java连接池,多线程批处理中的最大连接数是多少?

coding-style - 软件安全标准

c - 函数声明和定义 C - 参数定义为 pascal : what should it be?

java - Jackson转换执行时间/顺序和@JsonAnySetter

java - 从 Java 文件加载图像

java - Jersey 2.0 相当于 POJOMappingFeature

javascript - 我应该使用绑定(bind)还是关闭 'this' 的别名?

java - 保持 Vector 的内容完整

c# - 为什么要封装这个字段?

多行编写的 JavaScript 正则表达式