C# C语言中的继承和类型

C# C语言中的继承和类型,c#,oop,C#,Oop,根据下面的详细信息,我在允许员工或个人拥有帐户方面遇到了一些麻烦 在下面的代码片段中,在Account类中,我只接受Person作为所有者。我需要接受一个员工或者一个人 我的主要问题是,在方法applyFee的后面,我需要联系owner对象,如果owner有feeDiscount属性,我需要使用它来计算。 我的问题是,因为Account类中的类型是Person owner,所以我没有得到feeDiscount,因为它为null 班主任 { 公共字符串名称; 公共Personstring新名称 {

根据下面的详细信息,我在允许员工或个人拥有帐户方面遇到了一些麻烦

在下面的代码片段中,在Account类中,我只接受Person作为所有者。我需要接受一个员工或者一个人

我的主要问题是,在方法applyFee的后面,我需要联系owner对象,如果owner有feeDiscount属性,我需要使用它来计算。 我的问题是,因为Account类中的类型是Person owner,所以我没有得到feeDiscount,因为它为null

班主任 { 公共字符串名称; 公共Personstring新名称 { name=newName; } } 班主任:人 { 公共十进制feeDiscount; 公共覆盖Staffstring newName { name=newName; feeDiscount=0.5; } } 类别帐户 { 私人十进制余额=1000; 私人业主; 公共会计新所有者 { 所有者=新所有者; } 公共无效申请费{ 十进制费用=100; 如果所有者!=null { 如果是owner.feeDiscount{ 余额=余额-费用*owner.feeDiscount; }否则{ 余额=余额-费用; } } } } 班级计划 { 静态环[]args { Person person1=新的PersonBob; 员工1=新员工; Account account1=新Accountperson1; Account account2=新Accountstaff1; account1.applyFee; account2.applyFee; } } 若您希望Person尽可能保持通用性,那个么您可以创建另一个名为customer的类,其feeDiscount为0

因此,任何有生意在商店消费的人都有一些反馈账户。通过这种方式,您可以将Fee应用于客户或员工,但不能应用于个人

如果您希望个人尽可能保持通用性,则可以创建另一个名为Customer的类,其feeDiscount为0


因此,任何有生意在商店消费的人都有一些反馈账户。通过这种方式,您可以向客户或员工而不是个人应用Fee

最简单的解决方案是向您的个人提供feeDiscount1@canton7对不起,我弄错了!你第一次是对的time@MatthewWatson哦,不,我错过了编辑窗口,现在可以更改回去了!他们是对的,0的费用折扣将导致100*0,实际上是100%的折扣最简单的解决方案是给你的人一个feeDiscount1@canton7对不起,我弄错了!你第一次是对的time@MatthewWatson哦,不,我错过了编辑窗口,现在可以更改回去了!他们是对的,0的费用折扣将导致100*0,实际上是100%的折扣。我如何定义Account类中的所有者可以是客户或员工?我发现的方法是使用私人所有者;但不确定这是否正确。你可以保持原样,相信这个账户只是美联储的职员和客户,或者你可以制作一个人和抽象类,说一个人不能只是一个人,它只能用作定义客户或职员等其他类的基础。我如何定义帐户类中的所有者可以是客户还是员工?我发现的方法是使用私人所有者;但不确定这是否正确。你可以把它原封不动地放在一边,相信这个账户只不过是给员工和客户,或者你可以让人和抽象的类说一个人不能仅仅是一个人,它只能用来作为定义客户或员工等其他类的基础。