学习软件设计——C#练习(7)

来源:互联网 发布:淘宝泰国代购哪家好 编辑:程序博客网 时间:2024/06/16 21:57

C#练习(1~8)源代码下载请到http://download.csdn.net/detail/hsttmht/3751088

引用请注明http://blog.csdn.net/hsttmht

 

1、编写一个类,完成对属性的练习,要求输入不符合要求的负数进行测试,并把各种测试的结果截图


class 类名
{  private int 账号;  //帐号
   private double 余额;  //余额
   private double 利息;  //利息
   private static double 利率; // 利率是静态的,因为所有帐户获得的利息相同
   public Account(int 字段, double 字段)//账号和余额初始化
     {


     }
   public int 用户账户号码// 只读属性
      {
get   {       }
      }
    public double 余额
     {
           get{    }
     }
    public double 利息
     {
get    { }
set    { }
     }
}
public static double 利率
    {
        get
        {
            
        }
        set
        {
             
        }
    }
static void Main(string[] args)
    {
  
   类名 对象名 = new 类名(参数, 参数); // 创建 类的对象
   Console.WriteLine("输入到现在为止已获得的利息和利率");
   输入获得的利息和当前利率
   计算总利息
   Console.WriteLine("获得的总利息为: {0}", 总利息);
    }


2.编写一个控制台应用程序,完成下列功能,并回答提出的问题。
1)创建一个类A,在构造函数中输出“A”,在创建一个类B,在构造函数中输出“B”。
2) 从A继承一个名为C的新类,并在C内创建一个成员B。不要为C创建构造函数。
3)在Main方法中创建类C的一个对象,写出运行程序后输出的结果。
4)如果在C中也创建一个构造函数输出“C”,整个程序运行的结果又是什么?


3.编写一个控制台应用程序,完成下列功能,并写出运行程序后输出的结果。
1)创建一个类A,在A中编写一个可以被重写的带int类型参数的方法MyMethod,并在该方法中输出传递的整型值后加10后的结果。
2)再创建一个类B,使其继承自类A,然后重写A中的MyMethod方法,将A中接收的整型值加50,并输出结果。

3)在Main方法中分别创建A和类B的对象,并分别调用MyMethod方法。


using System;namespace Example_1{    class SavingsAccount    {        //用于存储帐户号码、余额和已获利息的类字段。        private int _accountNumber;        private double _balance;        private double _interestEarned;                // 利率是静态的,因为所有的帐户都使用相同的利率        private static double _interestRate;        // 构造函数初始化类成员        public SavingsAccount(int accountNumber, double balance)        {            this._accountNumber = accountNumber;            this._balance       = balance;        }        // AccountNumber只读属性        public int AccountNumber        {            get            {                return _accountNumber;            }        }        // Balance 只读属性        public double Balance        {            get            {                if (_balance < 0)                    Console.WriteLine("无余额");                return _balance;            }        }        // InterestEarned 读/写属性        public double InterestEarned        {            get            {                return _interestEarned;            }            set            {                // 验证数据                if (value < 0.0)                {                    Console.WriteLine("InterestEarned 不能为负数");                    return;                }                _interestEarned = value;            }        }        // InterestRate 读/写属性为静态,        // 因为所有特定类型的帐户都具有相同的利率        public static double InterestRate        {            get            {                return _interestRate;            }            set            {                // 验证数据                if (value < 0.0)                {                    Console.WriteLine("InterestRate 不能为负数");                    return;                }                else                {                    _interestRate = value / 100;                }            }        }    }        class TestSavingsAccount    {        /**//// <摘要>        /// 应用程序的主入口点。        /// </摘要>        [STAThread]        static void Main(string[] args)        {            // 创建 SavingsAccount 的对象            SavingsAccount objSavingsAccount = new SavingsAccount(12345, 5000);;            // 用户交互            Console.WriteLine("输入到现在为止已获得的利息和利率");            objSavingsAccount.InterestEarned = Int64.Parse(Console.ReadLine());            SavingsAccount.InterestRate = Int64.Parse(Console.ReadLine());                        // 使用类名访问静态属性            objSavingsAccount.InterestEarned += objSavingsAccount.Balance * SavingsAccount.InterestRate;            Console.WriteLine("获得的总利息为: {0}", objSavingsAccount.InterestEarned);        }    }}

using System; public class A { public A() { Console.WriteLine("A"); } }public class B { public B() { Console.WriteLine("B"); } } public class C : A { B newb = new B(); /*public C()   {   Console.WriteLine("C");   }*/} class MainClass { public static void Main() { C newc = new C(); Console.ReadLine(); } }

using System; public class A { public virtual void MyMethod(int num) { num += 10; Console.WriteLine(num); } } public class B : A { public override void MyMethod(int num) { num += 50; Console.WriteLine(num); } } class MainClass { public static void Main() { A a = new A(); a.MyMethod(100); B b = new B(); b.MyMethod(200); Console.ReadLine(); } }


原创粉丝点击