C#类

作者: 叫我颜先生 | 来源:发表于2018-06-17 11:02 被阅读0次
  • 类成员变量封装
  • 构造函数,参数化构造函数(带参)
  • 析构函数
    using System;
    namespace LineApplication
    {
       class Line
       {
          private double length;   // 线条的长度
          public Line()  // 构造函数
          {
             Console.WriteLine("对象已创建");
          }
          ~Line() //析构函数
          {
             Console.WriteLine("对象已删除");
          }

          public void setLength( double len )
          {
             length = len;
          }
          public double getLength()
          {
             return length;
          }

          static void Main(string[] args)
          {
             Line line = new Line();
             // 设置线条长度
             line.setLength(6.0);
             Console.WriteLine("线条的长度: {0}", line.getLength());           
          }
       }
    }

当上面的代码被编译和执行时,它会产生下列结果:

    对象已创建
    线条的长度: 6
    对象已删除
  • 静态成员
    静态成员是属于类的,非静态成员是属于对象的
    1. static与非static最大的区别就是static类型的变量及方法在调用的时候就在内存中分配了地址,且这个地址只有一份,故static可以直接访问。而非static必需手工去实例化该类,以对象的方式去访问变量和方法。
    2. 在一个静态方法里去访问该类的非静态变量或方法,是访问不到的。由于static是属于类本身的,是在类被调用的时候,static类型就已经生成,而非static此时并没有生成,它是属于这个类的对象。故在没有实例化成对象的时候,在静态方法中访问非静态是根本找不到它们的,它不属于这个类。
    3. 在非静态方法中去访问静态是可以的。
    4. 每个类都必须有构造函数,否则此类无法实例化成对象。而我们有时定义的类可以不写它的构造函数,这是因为编译器会帮我们加上一个静态的空构造函数。这样才能实例化。也可以用静态构造函数去初始化静态变量。
区别 静态 非静态
调用 类.静态方法名 类 对象 = new 类的构造函数 对象.非静态方法名
初始化 静态成员是在第一次使用时进行初始化,静态构造函数只能被执行一次 非静态的成员是在创建对象的时候,非静态的构造函数可以根据需要进行多次使用
存储 静态的只有一块全局内存空间 非静态的可以有多块内存空间(副本)
释放 静态的一旦创建则在全局区一直存放,直到应用程序结束 非静态的则是由new关键字在堆中创建的。可以有多个副本。由GC进行释放。

相关文章

  • unity3d c#调用java

    c#调用java非静态方法 C#调用静态类,静态方法 ; CustomClass的静态类,SetData是它的静...

  • c#操作数据库类

    c#操作数据库类

  • C# 访问修饰符

    C# 【方法】默认访问级别 : private C# 【类】和【结构体】默认访问级别 : internal 1.命...

  • C# 类命名建议

    C# 类命名建议xxxCollection 集合(xxx类的集合)xxxHelper(xxx的帮助类)xxxInf...

  • # [C# Directory类的操作]

    C# Directory类的操作 Directory类位于System.IO 命名空间。Directory类提供了...

  • C#它山之石

    C# 使用反射技术实例化指定的类C#之玩转反射Reactive Extensions入门IoC solutions...

  • C# 基础

    C# 的源代码都是以 . cs 结尾的。 namespace 命名空间 C# 是由一个个类组成,类是最小的单元,命...

  • C#类

    类成员变量封装 构造函数,参数化构造函数(带参) 析构函数 当上面的代码被编译和执行时,它会产生下列结果: 静态成...

  • c#-网络编程,聊天工具

    c#的网络编程比较简单,有相关的类来实现相关的功能。 本小程序是<>里面的。 基本的类介绍 tcp...

  • 父类转换为子类

    C# 父类转换为子类公有方法 调用

网友评论

      本文标题:C#类

      本文链接:https://www.haomeiwen.com/subject/agzieftx.html