C#学习笔记(七)——定义类

一、C#中类的定义

1、类的定义

class Myclass
{

}

       默认情况下是类是内部的,即外部的项目是不可以访问这个类,相当于加internal来修饰。但实际上是不需要加入的。

       如果要指定类是公共的,可以让外部的项目访问的话,应该加上关键字public

public class MyClass
{
}

2、抽象与密封

      我们可以指定类是抽象的(不能实例化),或者是密封的(不能继承)

比如说:

public abstract class MyClass
{
}

public sealed class MyClass
{
}

3、继承

还可以在类的定义中指定继承,我们使用一个冒号来表示继承

public class MyClass:MyBase
{
}

PS:在C#的定义中,只能有一个基类,如果继承了一个抽象类,就必须实现所继承的所有抽象成员。(除非派生类也是抽象类)

        编译器不允许派生类的可访问性高于基类。

4、接口

(1)接口的继承

        与继承类相同,继承接口也是直接紧跟在冒号的后面。但是同时继承了类的话,那么我们就必须把继承的接口放在类的后面,用逗号隔开

如:

public class MyClass:ImyInterface
{
}

public class MyClass:MyBase,ImyInterface
{
}

而且接口不像类,只能继承一个,接口可以一次性继承很多个,中间以逗号隔开。

(2)接口的定义

Interface IMyInterface
{
}

       与类相同,也是默认是内部的接口,如果要成为公共的,加上public关键字即可。

5、一个demo

namespace Exercise
{
    public abstract class myBase
    {

    }

    internal class Myclass:myBase
    {

    }

    public interface IMyBaseInterface
    {

    }

    internal interface IMyBaseInterface2
    {

    }

    internal interface IMyInterfae:IMyBaseInterface,IMyBaseInterface2
    {

    }

    internal sealed class MycompLexClass:Myclass,IMyInterfae
    {

    }

    class Program
    {
        

        static void Main(string[] args)
        {
            MycompLexClass myobj = new MycompLexClass();
            Console.WriteLine(myobj.ToString());
            Console.ReadKey();
        }
    }
}

C#学习笔记(七)——定义类

上一篇:c#继承初见


下一篇:C#文件操作