码迷,mamicode.com
首页 > 其他好文 > 详细

计算器

时间:2015-03-20 16:24:42      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:c#基础

基础加强第一天

1、抽象类

public abstract class SuanFa
   {
     
       public int num1 { get; set; }
       public int num2 { get; set; }
       //构造函数
       public SuanFa(int n1,int n2)
       {
           this.num1 = n1;
           this.num2 = n2;
       }
       //每一个类中都有一个无参的构造函数,如果写了有参数的构造函数,那么无参数的额构造函数就被干掉了

       public SuanFa() { }
       /// <summary>
       /// 抽象的方法
       /// </summary>
       /// <returns></returns>
       public abstract int result();
   }

2、加法(减法,乘法,除法和加法雷同,只是需要做一下小的改动)

public class Add:SuanFa
    {
        //类与类之间  可以通过继承的方式表示
        //如果继承了   子类一般情况下都会调用父类中的额无参数的构造函数

        public Add(int n1, int n2) : base(n1, n2) { }
        public override int result()
        {
            return this.num1 + this.num2;
        }
    }

3、控制台应用程序

 static void Main(string[] args)
        {
            Console.WriteLine("请您输入第一个数字");
            int num1 = Convert.ToInt32(Console.ReadLine());//此处没有做异常处理
            Console.WriteLine("请您输入第二个数字");
            int num2 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请您输入运算符+、-、*、/");
            string opt = Console.ReadLine();


            //将运算符,第一个数,第二个数传入
            SuanFa sf = GetNumAndOpt(opt,num1,num2);
            //判断一下  sf是否为null
            if(sf!=null)
            {
                int result= sf.result();
                Console.WriteLine("计算结果:"+result);
            }
            Console.ReadKey();
        }

        private static SuanFa GetNumAndOpt(string opt,int num1,int num2)
        {
            SuanFa sf = null;
            switch (opt)
            {
                case "+":
                    sf = new Add(num1,num2);
                    ; break;
                case "-":
                    sf=new Sub(num1,num2);
                    break;
                case  "*":
                    sf = new Mul(num1, num2);
                    break;
                case "/":
                    sf = new Divide(num1,num2);
                    break;
            }
            return sf;
        }

 

计算器

标签:c#基础

原文地址:http://blog.csdn.net/qizhichao110/article/details/44492917

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!