您的位置:首页 > 其它

静态方法与实例方法

2007-10-24 14:19 302 查看
静态方法:使用了static修饰符修饰的方法是静态方法

实例方法:没有使用static修饰符修饰的方法是实例方法

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

静态方法是一个特殊的成员方法,不属于类的某一个具体的实例或对象,而是属于类本身。静态方法不对特定实例进行操作,静态方法只能访问类中的静态成员,而不能使用实例成员。访问静态方法只能使用类名,而不需要创建对象,也不能使用对象名来引用。


using System;


using System.Collections.Generic;


using System.Text;




namespace ConsoleApplication19




...{


class Account




...{


private decimal balance;


private string name;


public Account(string name)




...{


this.balance = 0;


this.name = name;


Print("开户",0);


}


public bool Deposit(decimal amount)




...{


if (amount == 0)


return false;


balance += amount;


Print("存入",amount);


return true;


}


public bool Withdraw(decimal amount)




...{


if (amount > balance || amount <= 0)


return false;


balance -= amount;


Print("取出",amount);


return true;


}


private void Print(string operation, decimal amount)




...{


Console.WriteLine("--------------------------");


Console.WriteLine("姓名:{0}",name);


Console.WriteLine("{0}:{1}",operation,amount);


Console.WriteLine("余额:{0}",balance);


Console.WriteLine("--------------------------");


}


public static void PrintBankInfo() //静态方法




...{


Console.WriteLine("--------------------------");


Console.WriteLine("XYZ 银行,电话:123456789");


Console.WriteLine("--------------------------");


Console.WriteLine(" 顾客至上 服务第一 ");


Console.WriteLine("--------------------------");


}


static void Main(string[] args)




...{


Account.PrintBankInfo(); //静态方法通过使用类名来引用


Account acc = new Account("张三");


bool succeed = acc.Deposit(100);


if (!succeed)


Console.WriteLine("存款失败");


succeed = acc.Withdraw(37);


if (!succeed)


Console.WriteLine("取款失败");


Console.ReadLine();


}


}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: