【问题标题】:Abstract class and static in javajava中的抽象类和静态
【发布时间】:2015-10-03 11:49:53
【问题描述】:

大家好,我检查了有关使用抽象类和静态的问题,不幸的是我找不到将这两者一起使用 所以这是我的问题;

(我在这里有点新,我找不到如何插入代码)

package gerekenler;

public abstract class Employee {


  private int EmpId;

  private String Name;

  private int Age;

  public Employee (int EmpId, String name, int age) {

  }
}

我想插入静态变量,例如工作日 (7) 和额外问题,在摘要中使用 private 是否正确

【问题讨论】:

  • 向我们展示您的工作日代码。另外,那些不是构造函数..
  • 对不起,我删除了构造函数,我试图学习如何使用静态私有静态 int DailyWorkhours = 8;私有静态 int WorkingDays =5;
  • 我相信您也希望这些字段为final。您应该尽可能隐藏您的任何字段。如果 Employee 的子类不需要知道有多少个工作日,则将其设为 private 并仅使用它来定义抽象类中的共享行为。如果子类需要知道它,请将其保护起来,等等。顺便说一句。确保不要以大写字母开头字段和方法。
  • 感谢改进的 cmets,我将牢记这一点:)

标签: constructor static abstract


【解决方案1】:

首先,在抽象类中定义私有变量是完全可以的,只是真正公开、受保护或私有的问题,你应该作为程序员自己决定。

如果你想在你的类中创建一个静态变量,可以这样做:

private static int workingDays = 5;

或者喜欢

private static int workingDays;
static {
   workingDays = 5;
}

但在你的情况下,我建议创建一个像

这样的枚举
public enum WorkingDays {
    Monday,
    Sunday,
    Tuesday,
    Wednesday
    Friday;
}

并在您的课程中使用它(即使您可以在您的课程中声明(私有)它)

【讨论】:

  • 不客气。但请记住,您可以通过在 SO 帖子中搜索找到所有这些内容,我只是将其包装起来
猜你喜欢
  • 2012-10-01
  • 2011-06-21
  • 1970-01-01
  • 2012-12-03
  • 1970-01-01
  • 2011-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多