1. 程式人生 > >C#-get/set和方法過載

C#-get/set和方法過載

/*
屬性的應用。
*/
using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            CircleArea cl=new CircleArea();
            cl.Radius = double.Parse(Console.ReadLine());
            Console.WriteLine(cl.GetArea());
            Console.ReadKey();
        }
    }
    class CircleArea{
        private double radius;
        const double PI=3.14;
        public double Radius{
            get{return radius;}
            set{
                if(value >0)
                    radius=value;
                else
                    Console.WriteLine("overflow error!");
            }
        }
        public double GetArea(){
            return PI*radius*radius;
        }
    }
}
/* 
編寫一個名為MyClass的類,在該類中編寫一個方法,名稱為CountChar,返回值為整型,引數有兩個,第一個引數可以是字串、
整數、單精度、雙精度,第二個引數為字元,方法功能返回第二個引數在第一個引數中出現的次數。
例如:,CountChar("6221982",'2')返回值為3。
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("出現次數為:{0}",MyClass.CountChar("6221982", '2'));
            Console.WriteLine("出現次數為:{0}", MyClass.CountChar(629.2223, '2'));
            Console.WriteLine("出現次數為:{0}", MyClass.CountChar(45652332, '2'));
            Console.WriteLine("出現次數為:{0}", MyClass.CountChar("6221982", '2'));
            Console.ReadKey();
        }
        
    }
    class MyClass
    {
        public static int CountChar(string s, char c)
        {
            int count = 0;
            char[] a = s.ToCharArray();
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == c)
                    count++;
            }
            return count;
        }
        public static int CountChar(float s, char c)
        {
            int count = 0;
            char[] a = s.ToString().ToCharArray();
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == c)
                    count++;
            }
            return count;
        }
        public static int CountChar(int s, char c)
        {
            int count = 0;
            char[] a = s.ToString().ToCharArray();
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == c)
                    count++;
            }
            return count;
        }
        public static int CountChar(double s, char c)
        {
            int count = 0;
            char[] a = s.ToString().ToCharArray();
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == c)
                    count++;
            }
            return count;
        }
    }
}

執行結果:

注意:

如果派生類與基類有相同的名稱或簽名的成員,那麼在派生類中就隱藏了基類成員。如果派生類是有意隱藏基類成員,可在派生類成員宣告中加new修飾符。