java - 实现类 Java

标签 java instance-variables

书上的问题: 编写一个模拟可充电电池的电池类。电池有构造公用电池(双倍容量) 其中容量是以毫安小时为单位测量的值。典型的 AA 电池容量为 2000 至 3000 mAh。方法 公共(public)排泄管(双倍) 按给定的量耗尽电池的容量。方法 公共(public)无效费用() 将电池充电至其原始容量。方法 公共(public)双 getRemainingCapacity() 获取电池的剩余电量。

我的问题:我的实例变量是否正确?您如何确定私有(private)实例变量中需要什么? (如果这有意义)这段代码可以用更好的方式编写吗?

我的代码:

public class Battery
{

      private double fullCharge;
      private double batteryCapacity;

public Battery(double capacity)
{

      batteryCapacity = capacity;
      fullCharge = capacity;

}
public void drain(double amount)
{
     batteryCapacity = batteryCapacity - amount;
}

public void charge()
{

     batteryCapacity = fullCharge;
}

public double getRemainingCapacity()
{
     return batteryCapacity;
}

}  

最佳答案

你的实例变量看起来不错。

一般情况下,大多数实例变量都是私有(private)的,当且仅当将实例变量设为私有(private)似乎没有任何意义或不会提供任何利润时,您将其设为公共(public)。

在方法drain()中使用复合赋值运算符

batteryCapacity -= amount;

您可以更新方法和构造函数来检查范围(对于负值)。

关于java - 实现类 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18285096/

相关文章:

java - 在敌对环境中运行 OSGi Equinox 控制台

ios - 如何从NSMutableArray设置实例变量?

java - 克隆内部类定义的对象

c++ - 将此实例变量添加到 C++11 文件的 header 会使编译器陷入困境。为什么?

java - 在方法中处理不同的实例变量

java - GCP Dataflow 刷新您的凭据时出现问题

java - 验证 Spring Hateoas Pageable 参数

objective-c - iOS Objective-C 访问来自不同类的 ivars

java - 使用 java 权限问题运行 docker

java - 如何在rest服务中编写web应用初始化代码?