首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >word.sub-word.sub-sub-word

word.sub-word.sub-sub-word
EN

Stack Overflow用户
提问于 2012-05-21 07:00:01
回答 1查看 150关注 0票数 0

我是编程新手,所以我不知道术语是什么,我道歉。我希望能够写出如下所示的代码:

代码语言:javascript
复制
Label Label1 = new Label();
Label1.Text = DateTime.Now.ToString("MM.dd.yyyy");

但是使用我自己的对象:

代码语言:javascript
复制
Reciept ReciptForAirPlaneTicket = new Reciept();
ReciptForAirPlaneTicket.MOP = MOP.CreditCard.Visa("4111111111111111|0815");

Reciept ReciptForFood = new Reciept();
ReciptForFood.MOP = MOP.CreditCard.MasterCard("4222222222222222|0917");

Reciept ReciptForClothes = new Reciept();
ReciptForClothes.MOP = MOP.Cash;

Reciept ReciptForTools = new Reciept();
ReciptForTools.MOP = MOP.Check("12345");

我真的不想偷懒,但是我已经找了差不多一天了,我甚至不知道该找什么。我认为我至少需要创建一个类,但也需要创建一个结构或名为enum的东西,但我真的不知道。

我正在使用C#。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-21 07:06:30

对我来说,这似乎是一种不同寻常的方法,但要获得确切的语法,您可以使用静态类拖把创建一种工厂模式。

代码语言:javascript
复制
public class MethodOfPayment
{
    public enum enumCardType { Visa, Mastercard };
    public enum enumPaymentType { CreditCard, Cash };

    public string Number { get; set; }
    public enumPaymentType PaymentType { get; set; }
    public enumCardType CardType { get; set; }
}

public static class MOP
{
    public static class CreditCard
    {
        public static MethodOfPayment Visa(string number)
        {
            return new MethodOfPayment() { 
                Number = number,
                PaymentType = MethodOfPayment.enumPaymentType.CreditCard,
                CardType = MethodOfPayment.enumCardType.Visa
            };
        }
    }
}

对其他类型重复上述操作,然后根据需要实例化。

代码语言:javascript
复制
ReciptForAirPlaneTicket.MOP = MOP.CreditCard.Visa("4111111111111111|0517"); 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10677932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档