码迷,mamicode.com
首页 > 其他好文 > 详细

静态方法和实例方法

时间:2018-09-14 22:56:10      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:generic   string   实例成员   cti   []   必须   方法调用   不能   bsp   

判断是否静态方法的标识

1)      有static关键字:静态方法

2)      没用static关键字:实例方法

区别:

  1. 静态方法部队特定实例进行操作,静态方法只能访问类中的静态成员,而不能实例成员。访问静态方法也只能使用类名,而不能创建对象,也不能使用对象名来引用

 

  1. 实例方法可以使用类的任何成员。调用实例方法时,必须使用类的实例或对象来引用。实例方法对类的某个给定的实例进行操作,在实例方法类中可以使用this来访问该实例,调用实例方法时,必须先创建一个对象

 

  静态方法只能访问静态方法

  实例方法可以访问静态和实例成员

  之所以不允许静态方法访问实例成员变量,时因为实例成员变量时属于某个对象的,而静态方法在执行时,并不一定存在对象,同样,因为实例方法可以访问实例成员变量,如果允许静态方法调用实例方法,将间接的允许静态方法使用实例成员变量,这是错误的,基于同样的道理,静态方法也不能使用关键字this

代码实例:

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

namespace _8._3静态方法和实例方法
{
class Program
{
int exampleVar = 0; //实例成员
static int staticVar = 0;//静态成员
static void staticMethod() //静态方法
{
//报错不能引用非静态的字段
// exampleVar = 1;
//只能使用静态的字段
staticVar = 1;
}
void exampleMethod() //实例方法
{
//实例中可以调用任何成员,包括静态与实例成员
exampleVar = 1;
staticVar = 1;
}
static void Main(string[] args)
{
//调用静态方法一
staticMethod();
//调用静态方法二
Program.staticMethod();
//调用实例对象必须new出一个新的对象才可以使用
Program p = new Program();

}
}
}

 

静态方法和实例方法

标签:generic   string   实例成员   cti   []   必须   方法调用   不能   bsp   

原文地址:https://www.cnblogs.com/wangjinya/p/9648996.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!