CSharp类的初探

类是存储在堆heap 上的引用 
类是使用class 关键字声明的,格式如下:

class TestClass
{
    // Methods, properties, fields, events, delegates 
    // and nested classes go here.
}
类只能单一继承,但是可以实现多个接口

nheritance 示例
class ClassA { }
Single class DerivedClass: BaseClass { }
无,实现两个接口 class ImplClass: IFace1, IFace2 { }
单一,实现一个接口 class ImplDerivedClass: BaseClass, IFace1 { }

在其他选件类中可以直接在命名空间内声明的选件类,未嵌套,可以是 public 或 Internal。 默认情况下选件类是 internal

类成员,包括嵌套选件类,可以是  public protected Internal protected internal private 。默认情况是private。

public:访问不受限制。

protected:访问仅限于包含类或从包含类派生的类型。

Internal:访问仅限于当前程序集。

protected internal:访问仅限于当前程序集或从包含类派生的类型。

private:访问仅限于包含类型。

一个类通常能包含下列成员声明:

构造函数
析构函数
常量
字段
方法
属性
索引器
运算符
事件
委托
接口
结构

    class Child
    {
        private int age;
        private string name;

        public Child()
        {
            name="N/A";
        }
        //重载
        public Child(string name,int age)
        {
            this.name=name;
            this.age=age;
        }
        public void PrintChild()
        {
            Console.WriteLine("{0},{1},岁了!",name,age);
        }

    }

  static void Main(string[] args)
        {
            Child child1 = new Child("Craig", 11);
            Child child2 = new Child("Sally", 10);
            Child child3 = new Child();
            // Display results:
            Console.Write("Child #1: ");
            child1.PrintChild();
            Console.Write("Child #2: ");
            child2.PrintChild();
            Console.Write("Child #3: ");
            child3.PrintChild();
/* Output:
    Child #1: Craig, 11 岁了.
    Child #2: Sally, 10 岁了.
    Child #3: N/A, 0 岁了.
*/


        }
    }



你可能感兴趣的:(C#)