• 面向对象编程思想(二)


    面向对象编程思想(二) - 人的描述

    (1)首先需要分析下人应该怎样来描述,如何分类

    1.人的分类,可以按照以下几种方式来分类,简单罗列:

    按照性别:男人+女人

    按照年龄:老年+年轻人

    按照肤色:黑人+白人+黄人

    ......

    2.那么,当要描述一个具体的人时,就可能需要上面那些分类的部分或全部的集合,因此需要让该具体的人去实现不同的接口,如:男人+年轻人+黑人,即需要实现,实现男人的接口、年轻人的接口、黑人的接口;所以应该把每个类别的每种情况写成接口,来让一个实体来实现

    (2)进行接口的设计划分、编写

    1.首先需要一个人的接口,每个人都应该实现该接口,代码如下:

    1 /**
    2  * 用于描述人的接口,所有的人都必须实现这个接口
    3  * @author Wfei
    4  *
    5  */
    6 public interface IPeople
    7 {
    8 
    9 }

    2.其次,就是讲描述人的一些特征,都写成接口,当描述一个人时,如果这个人具有某个特征,则只需要去实现相应的接口即可,本次编写的特征接口有:

    男人接口:public interface IMan

    女人接口:public interface IWoman

    老人接口:public interface IOld

    年轻人接口:public interface IYoung

    黑人接口:public interface IBlack

    白人接口:public interface IWhite

    黄人接口:public interface IYellow

    (3)在上面的一些人的特征的接口编写完毕后,当我们来形容一个这样的人时:男人、年轻人、黑人,就可以写一个类,来继承相应的人的特征接口:IMan、IYoung、IBlack,代码如下:

    1 /**
    2  * 描述一个男人,这个男人是年轻人,并且肤色是黑色
    3  * @author Wfei
    4  *
    5  */
    6 public class Person01 implements IMan, IYoung, IBlack
    7 {
    8     
    9 }

    (三)总结

    对于一类人的一些特征,我们把他们写成特征接口,而对于所有人都会有的一些必备的属性、特征,可以把这些必备的属性写成父类的属性或方法,这样在形容某类人时,可以在实现了相应的特征后,再继承人的必备的属性的父类;而当需要描述某类人中一个具体的人,就可以让该类人中这个具体的人继承描述这类人的类,然后添加/重写自己应该有属性或方法;这种将一个具体的人逐步的抽象、逐步的抽取属性的程序设计方法,不仅保证了面向对象设计思想中体现的“层次感”,也可以在以后有新的特征的人出现时,不会改动程序的主要逻辑,只需要将相应的特征写成接口,并给予实现、继承即可,保证了程序的灵活性和可扩展性;

    (四)源码

  • 相关阅读:
    背景100%显示
    你还在用Html.PartialAsync? 教你更简单一招搞定
    记一次TokuMX数据库集群恢复
    使用SolrNet访问Solr-5.5.0
    从注册表中删除打印机列表中的打印机
    DEV之GridControl常用设置
    在Devexpress中设置按钮列(无需写代码)
    Sql中获取表结构(字段名称,类型,长度,说明)
    DevExpress之ChartControl基本用法
    SQL Server类型与C#类型对应关系[转]
  • 原文地址:https://www.cnblogs.com/Wfei/p/3279256.html
Copyright © 2020-2023  润新知