using System;
class Distance //在.netC#中,访问权限不写表示什么?
{
float start,finish;
public float Start //在本方法中,get和set,start还没有初始化,怎么就可以get{return start;}
{
get{return start;} //??????是不是set和get方法两个在使用时必须同时出现
set{if(start>=0)start = value;}//?????value这个变量没有定义怎么就可以使用
}
/**************************************/
public float Finish
{
get{return finish;}
set{if(finish>=start)finish = value;}//??????value这个变量没有定义怎么就可以使用
}
/**************************************/
public float Length
{
get{return (finish-start);}
}
}/**************************************/
public class MainClass
{
public static void Main()
{
Distance d = new Distance();
d.Start = -5; //????怎么可以对一个对象的方法名进行赋值!
d.Finish = 10; //????怎么可以对一个对象的方法名进行赋值!
float length = d.Length;
Console.WriteLine(d.Start);//-5
Console.WriteLine(d.Finish);//10
Console.WriteLine(d.Length);//15
}
}
运行结果:-5 10 15//在本程序中,我在主类中输入Start=-5,Finish=10,而在上面的方法中,start必须>0才能赋值,那为什么执行结果的length还是等于15呢?
class Distance //在.netC#中,访问权限不写表示什么?
{
float start,finish;
public float Start //在本方法中,get和set,start还没有初始化,怎么就可以get{return start;}
{
get{return start;} //??????是不是set和get方法两个在使用时必须同时出现
set{if(start>=0)start = value;}//?????value这个变量没有定义怎么就可以使用
}
/**************************************/
public float Finish
{
get{return finish;}
set{if(finish>=start)finish = value;}//??????value这个变量没有定义怎么就可以使用
}
/**************************************/
public float Length
{
get{return (finish-start);}
}
}/**************************************/
public class MainClass
{
public static void Main()
{
Distance d = new Distance();
d.Start = -5; //????怎么可以对一个对象的方法名进行赋值!
d.Finish = 10; //????怎么可以对一个对象的方法名进行赋值!
float length = d.Length;
Console.WriteLine(d.Start);//-5
Console.WriteLine(d.Finish);//10
Console.WriteLine(d.Length);//15
}
}
运行结果:-5 10 15//在本程序中,我在主类中输入Start=-5,Finish=10,而在上面的方法中,start必须>0才能赋值,那为什么执行结果的length还是等于15呢?
解决方案 »
- vs2008 越来越慢
- 如何用上传控件把一个图片用流的方式存放到SQL数据库,再通过数据库读出图片
- asp.net传递中文参数显示为乱码
- 如何删除DropDownList包含指定内容的项
- 为什么我的Maxthon游览器总是要调一下"查看"-"编码"-"简体中文"才出现网页内容啊
- asp.net中如何使用json?
- 关于listitem.Attributes.Add方法
- 用md5加密密码后,怎么和它比较值?怎么验证啊?
- 请大家推荐一下本版的精华帖子!
- .net的高手们,发发善心救救我吧!!!!!
- 如何实现,不同的用户登录,看到的是不同的数据集(其实是同一个数据库,同一张表,只是每个人看到的都是和自己有关的部分),然后每个人添加,删除,修改,当老板登录时能看到所有这张表里的信息
- dropdownlist追加数据
}
value是属性的值 就是Finish 的值 具体查msdn吧, d.Start = -5; //????怎么可以对一个对象的方法名进行赋值!
d.Finish = 10; //????怎么可以对一个对象的方法名进行赋值!是属性 不应该叫方法吧 --不确定 应该叫函数成员吧
{
get{return start;}
set{if(start> =0)start = value;}
}
楼主理解有误,这不是方法,你可以把它当成一个变量。 public float Start
{
get{return start;}
} //声明了一个Start,类型为float的变量,而且是只读的。
public float Start
{
set{if(start> =0)start = value;}
} //声明了一个Start,类型为float的变量,而且是只可写的。
你刚学,其它的先不用理会,只把它当成变量即可。
{
get{return start;}
}
属性而已,属性好处就是获取值前会有很多判断,或者处理其他事务,更重要是
安全