c#构造函数外的基本关键字[重复]

Posted

技术标签:

【中文标题】c#构造函数外的基本关键字[重复]【英文标题】:c# base key word outside constructor [duplicate] 【发布时间】:2016-01-31 05:27:22 【问题描述】:
namespace ClientApp

    [Service(Exported = false)]
    class RegistrationIntentService : IntentService
    
        static object locker = new object();

        public RegistrationIntentService() :  base("RegistrationIntentService")  

上面的sn-p中,构造函数扩展了一个base("RegistrationIntentService"),这是干什么的? 我在以下位置找到了这个示例: https://developer.xamarin.com/guides/cross-platform/application_fundamentals/notifications/android/remote_notifications_in_android/

这是否意味着构造函数与RegistrationIntentService 构造函数相同?

【问题讨论】:

这不是特定于 Xamarin 的 - 它只是用于调用基类构造函数的 C# 语法。如果您是 C# 新手,我会在更传统的环境中深入学习该语言的基础知识,然后再转向存在额外限制和奇怪之处的移动设备。 【参考方案1】:

这只是用字符串参数"RegistrationIntentService" 调用IntentService 的构造函数。它是 C# 语言关键字,不是 Xamarin 特定的。

如果对象的基类没有默认构造函数,则必须使用此语法在派生类的构造函数中为基构造函数提供参数。

有关一些示例,请参阅MSDN documentation on the base keyword。

【讨论】:

以上是关于c#构造函数外的基本关键字[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中调用基本构造函数 [重复]

使用此的 C# 构造函数 [重复]

C# - 在一些计算后从另一个构造函数调用构造函数[重复]

在 C# 中使用自定义构造函数创建异常 [重复]

C# base() 构造函数顺序[重复]

在 C# 中的类构造函数中调用异步方法 [重复]