zoukankan      html  css  js  c++  java
  • 面向对象编程思想(二)

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

    (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 }

    (三)总结

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

    (四)源码

  • 相关阅读:
    windows程序设计第四章 system2.c 新增滚动条功能
    const指南
    转:android listView 继承ListActivity的用法
    iPhone使用委托在不同的窗口之间传递数据
    (PHP) imagecreatefrombmp 从 BMP 文件或 URL 新建一图像
    iPhone解析非UTF8的XML
    php生成略缩图(转载)
    iphone下载进度条,显示下载字节数与百分比
    android中实现消息推送
    Android动画开发——Animation动画效果
  • 原文地址:https://www.cnblogs.com/Wfei/p/3279256.html
Copyright © 2011-2022 走看看