What colon ( : ) means defining a class in c#?

2020-03-01 03:34发布

问题:

In c# defining a class what does : means?

As example, in this very basic controller of an ASP.NET MVC application:

namespace App.Controllers
{
    public class HomeController : Controller
    {    
        public ActionResult Index()
        {
            return View();
        }
    }
}

In the third line, what does : Controller means?

回答1:

In this case it means that the HomeController inherits the Controller class.

You can read more details about inheritance here, but simply put - inheritance means that everything a Controller is, a HomeController is also. A HomeController is a more finely grained Controller class.

It can also be used for implementation of interfaces http://msdn.microsoft.com/en-us/library/ms173156.aspx



回答2:

The : is used in C# to denote class inheritance or interface implementation. In this case HomeController inherits from the class Controller