当前位置:  开发笔记 > 编程语言 > 正文

界面良好做法

如何解决《界面良好做法》经验,为你挑选了1个好方法。

拥有一个没有方法但只有属性的接口是一个好习惯吗?



1> Lusid..:

想象一下,我们有两个不同的类,它们不是来自同一个基础:用户和企业.在我们项目的某个时刻,我们决定用户和企业都需要引用地址元素,例如Street1,Street2,City,State和Zip.我们还有一个代理类,它需要能够直接操作这些值,而不管它们在哪个类中定义.

实现此目的的一种方法是创建一个类似的接口(c#中的示例):

public interface IHasAddress {
  public string Street1 { get; set; }
  public string Street2 { get; set; }
  public string City { get; set; }
  public string State { get; set; }
  public string Zip { get; set; }
}

现在,我们可以在另一个类中使用一个方法来执行以下操作:

public static class Test {
  public static void CheckZip(IHasAddress addressContainer) {
    if (addressContainer == null) return;
    if (addressContainer.Zip == "33314") addressContainer.State = "FL";
  }
}

只要User和Business都实现IHasAddress接口,以下代码将按预期编译和工作:

User user = new User();
Business business = new Business();
Test.CheckZip(user);
Test.CheckZip(business);

这是一个纯粹的理论问题/解决方案,但它确实证明了对这种结构的完美需求.

推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有