这部分代码在整个程序中如何被调用?
private static int count=0;
public static int Count
{
get
{
return count;
}
}
上面这部分代码在整个程序中如何被调用阿?
下面是代码
--------------------------------------------------------------------------------------------------------------------
<%@page language="C#" runat="server" Debug="true"%>
<script runat="server">
public class Key
{
private int shape;
public Key(int newshape)
{
shape=newshape;
}
public int Shape
{
get
{
return shape;
}
}
}
public class Car
{
private string color;
private int gear;
private int ignition;
private bool engineRunning;
private static int count=0;
public static int Count
{
get
{
return count;
}
}
public string Color
{
get
{
return color;
}
set
{
color=value;
}
}
public int Gear
{
get
{
return gear;
}
}
public void ChangeGear(int direction)
{
if(direction<0)gear-=1;
if(direction>0)gear+=1;
if(gear>5)gear=5;
if(gear<-1)gear=-1;
}
public void ChangeGear(string direction)
{
if(direction.ToLower()=="down")
{
ChangeGear(-1);
}
if(direction.ToLower()=="up")
{
ChangeGear(+1);
}
}
public Car(int IgnitionShape)
{
color="Cold gray steel";
ignition=IgnitionShape;
count+=1;
}
public void Ignition(Key IgnitionKey)
{
if(IgnitionKey.Shape==ignition)
engineRunning=true;
else
engineRunning=false;
}
public void EngineOff()
{
engineRunning=false;
}
public string IsRunning
{
get
{
if(engineRunning)
{
return "The engine is running.";
}
else
{
return "The engine is not running.";
}
}
}
}
public void Page_Load()
{
Key AlexKey=new Key(0987654321);
Key RobKey=new Key(1861005040);
Key MyKey=new Key(1234567890);
Car MyCar=new Car(1234567890);
Response.Write("<b>New object 'MyCar' created.</b>");
Response.Write("<br/>Color:"+MyCar.Color);
Response.Write("<br/>Gear:" +MyCar.Gear);
MyCar.Color="Black";
MyCar.ChangeGear(+1);
Response.Write("<br/><b>Properties updated.</b>");
Response.Write("<br/>Color:" +MyCar.Color);
Response.Write("<br/>New gear:"+MyCar.Gear);//car对象调用的是Gear这个方法,但是在这个方法里没有count,那请问这个count是如何通过//调用Gear这个方法实现的?他们是怎么联系上的?
MyCar.Color="Black";
MyCar.ChangeGear(+1);
Response.Write("<br/><b>Properties updated.</b>");
Response.Write("<br/>Color:" +MyCar.Color);
Response.Write("<br/>New gear:"+MyCar.Gear);
MyCar.ChangeGear("Up");
Response.Write("<br/><b>Shifted 'up' one gear.</b>");
Response.Write("<br/>New gear:"+MyCar.Gear);
Response.Write("<hr>Attempting to start MyCar with AlexKey:");
MyCar.Ignition(AlexKey);
Response.Write(MyCar.IsRunning);
Response.Write("<hr>Attempting to start MyCar with RobKey:");
MyCar.Ignition(RobKey);
Response.Write(MyCar.IsRunning);
Response.Write("<hr>Attempting to start MyCar with MyKey:");
MyCar.Ignition(MyKey);
Response.Write(MyCar.IsRunning);
Response.Write("<br/>Attempting to stop MyCar:");
MyCar.EngineOff();
Response.Write(MyCar.IsRunning);
}
</script>