已知一个接口Interface1,Interface2,Class1的代码如下
interface Interface1
{
int Add(int a ,int b );  //加法运算
int Mul(int a,int b ; //乘法运算
}
interface Interface2
{
string Name
{  get;  set;}
}
class  Class1
{
public void Hello(string name)
      {  Console.WriteLine("你好:" + name);}
}
题目
(1)请通过一个新的类Class2,实现对上述两个接口和一个类的多重继承。
(2)并在Main方法中完成对Name的调用,对Add和Mul的调用,Hello方法的调用
(3)打印输出加法和乘法运算的值,可以自定义参数值,或键盘输入均可。

解决方案 »

  1.   


        interface Interface1
        {
            int Add(int a, int b); //加法运算
            int Mul(int a, int b); //乘法运算
        }
        interface Interface2
        {
            string Name
            { get; set; }
        }
        class Class1
        {
            public void Hello(string name)
            { Console.WriteLine("你好:" + name); }
        }    class Class2 : Class1, Interface1, Interface2
        {
            private string _name;
            public Class2(string name)
            {
                this._name = name;
            }        public int Add(int a, int b)
            {
                return a + b;
            }        public int Mul(int a, int b)
            {
                return a * b;
            }        public string Name
            {
                get
                {
                    return this._name;
                }
                set
                {
                    this._name = value;
                }
            }
        }    public class Client
        {
            public Client(string name, int a, int b)
            {
                Class2 c = new Class2(name);
                int add = c.Add(a, b);
                int mul = c.Mul(a, b);
                string outputName = c.Name;            System.Diagnostics.Debug.WriteLine(add);
                System.Diagnostics.Debug.WriteLine(mul);
                System.Diagnostics.Debug.WriteLine(outputName);
            }
        }
      

  2.   

        interface Interface1
        {
            int Add(int a, int b); //加法运算
            int Mul(int a, int b); //乘法运算
        }
        interface Interface2
        {
            string Name
            { get; set; }
        }
        class Class1
        {
            public void Hello(string name)
            { Console.WriteLine("你好:" + name); }
        }    class Class2:Class1 ,Interface1,Interface2 
        {
            private string name;
            public int Add(int a, int b)
            {
                return a + b;
            }        public int Mul(int a, int b)
            {
                return a * b;
            }        public string Name
            {
                get
                {
                    return name; 
                }
                set
                {
                    this.name = value;
                }
            }
        }    class Program
        {
            static void Main(string[] args)
            {
                Class2 cl2 = new Class2();
                cl2.Name = "Class2";
                Console.WriteLine(cl2.Name .ToString ());
                Console.WriteLine(cl2.Add (4,75).ToString ());
                Console.WriteLine(cl2.Mul (4,56).ToString ());
                cl2.Hello(cl2.Name);
                Console.ReadKey();
         }
    }
      

  3.   


      interface Interface1
        {
            int Add(int a, int b);
            int Mul(int a, int b);
        }
        interface Interface2
        {
            string Name
            {
                get;
                set;
            }
        }    public class MainClass
        {
            public void Hello(string name)
            {
                Console.WriteLine("Hello:{0}",name);
            }
        }    public class SubClass:MainClass,Interface1,Interface2
        {
            private string name=string.Empty;
            public int Add(int a, int b)
            {
                return a + b;
            }        public int Mul(int a, int b)
            {
                return a * b;
            }        public string Name
            {
                get {return name;}
                set { name=value; }
            }
        } class Program
        {
            static void Main(string[] args)
            {
                SubClass subClass = new SubClass();
                subClass.Name = "k476496890";
                subClass.Hello(subClass.Name);
                Console.WriteLine("a=10,b=20, a+b={0}", subClass.Add(10, 20));
                Console.WriteLine("a=10,b=20, a*b={0}", subClass.Mul(10, 20));
                Console.ReadLine();
            }
        }
      

  4.   

     interface Interface1
      {
      int Add(int a, int b);
      int Mul(int a, int b);
      }
      interface Interface2
      {
      string Name
      {
      get;
      set;
      }
      }  public class MainClass
      {
      public void Hello(string name)
      {
      Console.WriteLine("Hello:{0}",name);
      }
      }  public class SubClass:MainClass,Interface1,Interface2
      {
      private string name=string.Empty;
      public int Add(int a, int b)
      {
      return a + b;
      }  public int Mul(int a, int b)
      {
      return a * b;
      }  public string Name
      {
      get {return name;}
      set { name=value; }
      }
      } class Program
      {
      static void Main(string[] args)
      {
      SubClass subClass = new SubClass();
      subClass.Name = "k476496890";
      subClass.Hello(subClass.Name);
      Console.WriteLine("a=10,b=20, a+b={0}", subClass.Add(10, 20));
      Console.WriteLine("a=10,b=20, a*b={0}", subClass.Mul(10, 20));
      Console.ReadLine();
      }
      }