首页 > 解决方案 > 如何根据特定需求创建接口

问题描述

我会尽力解释这一点,因为我也没有 100% 理解这个问题。

我被要求创建一个界面来构建两个必要条件,涉及两个概念,称为众多家庭和内陆公司。众多家庭是一个拥有 4 个以上儿子的家庭,而内陆公司是来自内陆地区的公司。系统应该能够为众多家庭管理孩子数量的定义,并保留一个将内陆地区与一个值相关联的列表(这个值在上下文中并不重要,但需要存在) .

public double taxReduction()许多家庭和内陆地区应该实施一种方法,该方法将在稍后解释。

现在很重要的一点是,已经存在 2 个名为Taxpayerand的类Company,其中包含一些我认为对这个问题无关紧要的变量:

public class Taxpayer {
    ...
}
public class Company {
    ...
}

大家庭关乎纳税人,内地关乎公司。我不太了解接口,但我的想法是针对每个定义:

  1. 许多家庭 - 创建一个private int sons具有各自 get 和 set 的变量,该方法public double taxReduction()返回每个 son 的百分比if(this.sons>4),否则为 0(这些值仍有待定义,但对于整个图片来说它们并不重要)。

  2. Inland Company - 创建另一个名为 Region 的类:

     public Class Region{ 
         private String name; 
         private boolean inland; //if it's an inland region
     }
    

    public Region region;使用 get 和 set 以及相同的 taxReduction 方法添加一个变量。

现在的问题是(如果以上是正确的):

观察:该方法taxReduction()将用于计算一些数字,在这些数字中,我需要检查我是否正在访问代表众多家庭或内陆公司的实例。我真的不需要知道如何检查我所在的实例,因为我知道如何做到这一点,只是知道如何真正对所有这些接口问题进行排序。

标签: java

解决方案


这是我的两分钱:

我的界面怎么写?我只是添加双重减税吗?到接口?

只需使用double getTaxReduction()方法创建您的界面。

在您的实施中,TaxPayer或者Company您为它提供具体的主体。

我将如何与内陆地区保持清单?我是在我的主要地区创建一个包含所有内陆地区的列表,还是应该在其他地方初始化它?

这真的取决于。

Regionvalues 是一个缓慢变化的维度(很少更新)。

您必须质疑自己:如果应用程序走向国际(新区域添加为国家/地区的新分支),那么Region绝对应该将其存储在数据库中,您可以在其中动态管理它。

如果Region值有些固定(在一个国家/地区使用,Region定义很少改变),那么最好的地方是 enum Region。如果你想修改它为什么运行,你可以将它与一个properties文件配对,ReloadableResource就像在 Spring


推荐阅读