当前位置: 移动技术网 > IT编程>开发语言>.net > 封装计算方法实现面向对象计算器。

封装计算方法实现面向对象计算器。

2019年03月02日  | 移动技术网IT编程  | 我要评论

凤凰卫视军情直播间,零度尚品官网,借贷宝压缩包

 public abstract class calculator
    {
        public double number1 { get; set; }
        public double number2 { get; set; }
        public abstract double calculate();
    }
class add : calculator
    {
        public add(double n1,double n2)
        {
            this.number1 = n1;
            this.number2 = n2;
        }
        public override double calculate()
        {
            return number1 + number2;
        }
    }
class sub : calculator
    {
        public sub(double n1,double n2 )
        {
            this.number1 = n1;
            this.number2 = n2;
        }

        public override double calculate()
        {

            return number1 - number2;
        }
    }

 

class program
    {
        static void main(string[] args)
        {
            console.writeline("第一个数");
            double number1 = convert.todouble(console.readline());
            console.writeline("操作符");
            string  operate= console.readline();
            console.writeline("第二个数");
            double number2= convert.todouble(console.readline());
            calculator calculator = null;
            switch (operate)
            {
                case "+":
                    calculator = new add(number1, number2); 
                    break;
                case "-":
                    calculator = new sub(number1, number2);
                    break;
            }
            if (calculator!=null)
            {
                console.writeline("结果是:{0}",calculator.calculate());
            }
            else
            {
                console.writeline("没有这种操作");
            }
        }
    }

优化:

 calculator calculator = getcomputeobject(operate, number1, number2);

 private static calculator getcomputeobject(string perate, double number1, double number2)
        {
            calculator result = null;
            switch (perate)
            {
                case "+":
                    result = new add(number1, number2);
                    break;
                case "-":
                    result = new sub(number1, number2);
                    break;
            }
            return result;
        }

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网