面向对象代码实例部分(一)

1.          数据成员

a)          字段

namespace HanShuoOOP//包名

{

    class Person //类名

    {

        public static string PersonIdNum; //静态字段

        private string _name; //字段

        private string _sex; //字段

        private int age;//字段

    }

}

b)         常量(const

namespace HanShuoOOP

{

    class PIObject

    {

        public const float PI = 3.14f; //常量

    }

}

2.          函数成员

a)          方法

namespace HanShuoOOP

{

    class Animal

    {

        public static Animal Instance() //静态方法获得该类的对象

        {

            return new Animal();

        }

 

        public void Eat()    //普通方法

        {

            Console.WriteLine("我什么都可以吃");

        }

 

        public void Eat(string foodName)    //Eat方法重载

        {

            Console.WriteLine("我非常爱吃{0}",foodName);

        }

    }

}

调用方法
namespace HanShuoOOP

{

    class Program

    {

        static void Main(string[] args)

        {

            Animal animal = Animal.Instance();

            animal.Eat(); //对象.方法

            animal.Eat(“鱼”); //对象.方法

        }

    }

}

显示结果:

我什么都可以吃

我非常爱吃鱼

 

b)         属性

namespace HanShuoOOP

{

    class User

    {

        private string _name;

        public string Name

        {

            get   //用于获得字段的值

            {

                return _name;

            }

            set //用于设置字段的值

            {

                _name = value; //value是默认的参数

            }

        }

    }

}

c)          构造函数

 namespace HanShuoOOP

{

    class User

    {

        private string _name;

        private string _password;

        //下面是构造函数的重载

        public User(string name)

        {

            this._name = name;

        }

        public User(string name, string password)

        {

            this._password = password;

        }

    }

}

namespace HanShuoOOP

{

    class Construct

    {

        private int number;

 

        public int Number

        {

            get { return number; }

            set { number = value; }

        }

        private Construct()

        {

            this.number = number;

        }

 

        public static Construct GetConstruct()

        {

            return new Construct();

        }

 

    }

}

调用Construct
namespace HanShuoOOP

{

    class Program

    {

        static void Main(string[] args)

        {

            Construct con = Construct.GetConstruct();

            con.Number = 10;

            Console.WriteLine(con.Number);

        }

    }

}

namespace HanShuoOOP

{

    class StaticConstruct

    {

        public static string date;

        static StaticConstruct()

        {

            DateTime dt = DateTime.Now;

            if (dt.DayOfWeek == DayOfWeek.Monday)

            {

                date = "Monday";

            }

            else

            {

                date = "is not Monday";

            }

        }

    }

}

调用StaticConstruct
namespace HanShuoOOP

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine(StaticConstruct.date);

        }

    }

}

 

d)         析构函数

   

namespace HanShuoOOP

{

    class User

    {

        private string _name;

        private string _password;

        //下面是构造函数的重载

        public User(string name)

       {

            this._name = name;

        }

        public User(string name, string password)

        {

            this._password = password;

        }

        ~User()

        {

            //析构函数

        }

    }

}

 

posted @ 2009-02-22 22:58  bant  阅读(143)  评论(0)    收藏  举报