首页 > 其他 > 详细

静态方法的使用6.5

时间:2015-05-12 02:02:56      阅读:178      评论:0      收藏:0      [点我收藏+]

静态方法:

?一、静态方法:

?静态方法与静态字段类似,也是从属于类,都是类的静态成员。只要有类存在,静态方法就可以使用,静态方法的定义是在一般方法定义前加上static关键字。

?

?二、调用:

?调用静态方法的格式如下: 类名.静态方法名(参数表);

?

?三、注意:

?静态方法只能访问静态字段、其他静态方法和类以外的函数及数据,不能访问类中的非静态成员(因为非静态成员只有对象存在时才有意义)。但是静态字段和静态方法可以由任意访问权限许可的成员访问。

?

?四、示例:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Proj6_5
{   //说明静态方法的使用

    class Myclass2
    {

        int n;
        public Myclass2(int i) { n = i; }
        static public void add() { s++; } //定义静态方法
        static public int s = 0;


    }


    class Program
    {
        static void Main(string[] args)
        {

            Myclass2 a = new Myclass2(2);
            Myclass2 b = new Myclass2(5);
            Myclass2 c = new Myclass2(8);

            Myclass2.add(); //调用静态方法

            Console.WriteLine("s={0}", Myclass2.s);

            Myclass2.add(); //调用静态方法

            Console.WriteLine("s={0}", Myclass2.s);

            Myclass2.add(); //调用静态方法

            Console.WriteLine("s={0}", Myclass2.s);
        }
    }
}

?

?五、运行效果:

?bubuko.com,布布扣
?

?六、解释:

?由于静态方法只能访问静态字段、其他静态方法和类以外的函数及数据,所以,在上述中可以看做是只执行了add()方法,如果你把变量n也写成静态字段,在add方法里面写成s=s+n;那么结果就是下面:

?
?bubuko.com,布布扣
?
?这是因为a,b,c分别被定义且初始化后,此时n的数值就取决于最后一次的操作,最后一次操作想当是给n赋值为8,之后就是在add操作,所以数值如上.
?

静态方法的使用6.5

原文:http://cb123456.iteye.com/blog/2210357

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!