本帖最后由 孤鸿 于 2014-8-4 20:03 编辑
在自学视频构造方法重载有一个练习没讲,我出了点问题。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace lianxi1
{
class Ticket//写一个Ticket类,有一个举例属性(本属性只读,在构造方法中赋值)不能为负数
//有一个价格属性,价格属性只读,并且根据距离计算价格(1元/公里)
//0-100公里 票价不打折
//101-200公里 总额打9.5折
//201-300公里 总额打9折
//300公里以上 总额打8折
{
public Ticket(double juLi)//定义一个构造方法有个距离参数
{
this.juLi = juLi;
}
double juLi;
public double JuLi//定义距离属性
{
get
{
if (juLi < 0)//判断距离正负
{
juLi = 0;
}
return juLi;
}
}
double jiaGe;
public double JiaGe//定义价格属性
{
get
{
if (juLi <= 100)//不打折情况
{
jiaGe = juLi * 1;
}
else if (juLi >= 101 && juLi <= 200)//九五折情况
{
jiaGe = juLi * 0.95;
}
else if (juLi >= 201 && juLi <= 300)//九折情况
{
jiaGe = juLi * 0.9;
}
else//打八折情况
{
jiaGe = juLi * 0.8;
}
return jiaGe;
}
}
public void XinXi()
{
Console.WriteLine("本次形成的距离是{0},价格为{1}",JuLi,JiaGe);//这里为什么用大写的
}
}
}
就是这个,类的方法中为什么用那个属性,而不能用字段呢?
原来讲的地方用的是字段啊 |