C#中面向对象与面向过程 
---------------------- <a target="blank">ASP.Net+Unity开发</a>、<a target="blank">.Net培训</a>、期待与您交流! ---------------------- 
面向过程就是分析出解决问题所需要的步骤,是需要判断语句(if语句、if-else语句、if-else if语句、switch-case语句)来解决,还是需要循环语句(while循环、do-while循环、for循环)来处理,或者运用方法,最后把这些步骤一步一步实现。也就是说面向过程就是简单的处理问题。 
比如: 
   class Program 
    { 
        static void Main(string[] args) 
        { 
            int[] numbers = { 1, 3, 2, 5, 6, 4 }; 
            int sum,max,min; 
            sum=Js(numbers,out max,out min); 
             Console.WriteLine("数组的和为:{0}  最大值为:{1}  最小值为:{2}。",sum,max,min); 
            Console.ReadKey(); 
        } 
        static int Js (int[]number,out int max,out int min) 
        { 
           int sum=0; 
          max=number[0]; 
            min=number[0]; 
        for(int i=0;i<number.Length;i++) 
        {      
        sum=sum+number[i]; 
            if(number[i]>max) 
            { 
            max=number[i]; 
            } 
            if(number[i]<min) 
            { 
            min=number[i]; 
            }     
        } 
          return sum; 
        }        
} 
面向对象是把构成问题的事物分解成各个对象,简化程序的开发,面向对象内部的实现,写的还是面向过程的代码,它们是一个互补的关系。 
面向对象有三大特性: 
1、封装:把客观事物封装成抽象的类。类包含数据和方法,封装即控制数据或方法在哪里可以被访问。通过成员访问级别的控制,类可以隐藏类中属性和方法。 
2、 继承:子类可以使用父类的所有功能,并且对这些功能进行扩展,子类自己也可以定义自己的功能。 
3、多态:同种事物,多种状态。多态有两种方式:覆盖和重载。覆盖是指子类重新定义父类的方法,而重载是指同一个类中允许存在多个同名方法,而这些方法的参数不同。(这个和方法重载差不多。) 
面向对象的三大特性具有一定的复杂性,这也是区别于面向过程的重要一点。 
---------------------- <a target="blank">ASP.Net+Unity开发</a>、<a target="blank">.Net培训</a>、期待与您交流! ---------------------- 
 |