戏说面向对象程序设计(C#版) 第四章 业务的封装

第四章    业务的封装

copyright dedecms

 

dedecms.com

小菜:“你的意思是分一个类出来?     哦,对的,让计算和显示分开。”

dedecms.com

大鸟:“准确的说,就是让业务逻辑与界面逻辑分开,让它们之间的耦合度下降。只有分离开,才容易达到容易维

内容来自dedecms

护或扩展。” 内容来自dedecms

小菜:“让我来试试看。” 织梦好,好织梦

 

dedecms.com

class   Program

dedecms.com

{ 织梦内容管理系统

static     voidMain(string[] args)

内容来自dedecms

    { 内容来自dedecms

try

dedecms.com

        {

本文来自织梦

Console.Write("请输入数字A:"); dedecms.com

stringstrNumberA =    Console.ReadLine();

织梦内容管理系统

Console.Write("请选择运算符号(+、-、*、/):");

内容来自dedecms

stringstrOperate =       Console.ReadLine(); 内容来自dedecms

Console.Write("请输入数字B:");

织梦好,好织梦

stringstrNumberB =    Console.ReadLine(); dedecms.com

stringstrResult =        "";

内容来自dedecms

  dedecms.com

            strResult =     Convert.ToString( 织梦内容管理系统

Operation.GetResult(Convert.ToDouble(strNumberA),  copyright dedecms

Convert.ToDouble(strNumberB), strOperate));

织梦内容管理系统

Console.WriteLine("结果是:"+ strResult); 本文来自织梦

Console.ReadLine(); 织梦内容管理系统

 

织梦内容管理系统

        } 内容来自dedecms

catch(Exceptionex)

dedecms.com

        {

dedecms.com

Console.WriteLine("您的输入有错:"+ ex.Message);

copyright dedecms

        }

织梦好,好织梦

    } copyright dedecms

}

copyright dedecms

 

织梦内容管理系统

public   class   Operation 本文来自织梦

{ 内容来自dedecms

public   static     doubleGetResult(doublenumberA,  doublenumberB, stringoperate) dedecms.com

    { 织梦内容管理系统

doubleresult = 0d; copyright dedecms

switch(operate) dedecms.com

        {

内容来自dedecms

case  "+": 内容来自dedecms

                result = numberA + numberB;

dedecms.com

break; copyright dedecms

case  "-": 本文来自织梦

                result = numberA - numberB; dedecms.com

break;

内容来自dedecms

case  "*": copyright dedecms

                result = numberA * numberB;

dedecms.com

break;

dedecms.com

case  "/":

织梦好,好织梦

                result = numberA / numberB;

本文来自织梦

break; 织梦好,好织梦

        } 织梦内容管理系统

returnresult;

织梦好,好织梦

    } 本文来自织梦

}

内容来自dedecms

 

copyright dedecms

小菜:“鸟哥,我写好了,你看看!”

织梦内容管理系统

大鸟:“哈,孺鸟可教也,:),写得不错,这样就完全把业务和界面分离了。”

copyright dedecms

小菜心中暗骂:“你才是鸟呢。”     口中说道:“如果你现在要我写一个Windows应用程序的计算器,我就可以复用 dedecms.com

这个运算类(Operation)了。” 内容来自dedecms

大鸟:“不单是Windows程序,Web版程序需要运算可以用它,PDA,手机等需要移动系统的软件需要运算也可以

织梦好,好织梦

用它呀。” 织梦内容管理系统

小菜:“哈,面向对象不过如此。下会写类似代码不怕了。” 织梦内容管理系统

大鸟:“别急,仅此而已,实在谈不上完全面向对象,你只用了面向对象三大特性的一个,还两个没用呢?”

本文来自织梦

小菜:“面向对象三大特性不就是封装、继承和多态吗,这里我用到的应该是封装。这还不够吗?……我实在看不

dedecms.com

出,这么小的程序如何用到继承。至于多态,其它我一直也不太了解它到底有什么好处,如何使用它。”

copyright dedecms

大鸟:“慢慢来,有的东西好学了,你好好想想吧,我要去“魔兽”了,改时聊。” 织梦好,好织梦

精彩推荐
热点内容
最近更新