zoukankan      html  css  js  c++  java
  • C#中类的成员

    一、C#中类的成员

    1. 类的成员

    类中的数据和函数都称为类的成员。类的成员可以分为两类:

    ?类本身所声明的。

    ?从基类中继承来的。

    如果在类声明中没有指定基类,则该类将继承System.Object类的所有成员。

    2. 成员的类别

    类的成员有以下几种类别:

    注:C#中的类成员可以是任意类型,包括数组和集合。

    3. 类的成员的访问级别

    ?public:声明为公有成员,访问不受限制。公有成员提供了类的外部界面,允许类的使用者从外部进行访问。

    ?protected:声明为受保护成员,只能访问包含类或从包含类派生的类。受保护成员对于外界是隐藏的。

    ?internal:声明为内部成员,只能访问当前程序集。

    ?protected internal:声明为受保护的内部成员,只能访问当前程序集或从包含类派生的类。

    ?private:声明为私有成员,只有该类中的成员可以访问。如果在声明中没有设置成员的访问修饰符,成员会被默认为private。

    二、示例
      
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace Test
    {
        class Program
        {
            public class classTest                      // 定义一个classTest类
            {
                public int ID;                          // 公有成员ID
                protected int age;                      // 保护成员age
                private string name;                    // 私有成员name
                public static int count;                // 静态成员count
                public classTest(string name, int age)  // 公有成员,构造函数
                {
                    this.name = name;                   // 正确,允许访问自身成员
                    this.age = age;                     // 正确,允许访问自身成员
                    count++;                            // 正确,允许访问自身成员
                }
                public void Show()                      // 公有方法成员
                {
                    // 正确,允许访问自身成员
                    Console.WriteLine("Name:{0} Age:{1}", name, age);
                }
            }
            static void Main(string[] args)
            {
                // C#中类的成员-www.baike369.com
                // 创建一个classTest类的对象classTest1
                classTest classTest1 = new classTest("BaiXue", 18);
                classTest1.ID = 001;          // 正确,允许访问classTest1的公有成员
                //classTest1.age = 30;        // 错误,不允许访问classTest1的保护成员
                //classTest1.name = "LiPing"; // 错误,不允许访问classTest1的私有成员
                classTest1.Show();            // 正确,允许访问classTest1公有函数成员
                // 正确,允许通过类名来访问静态成员
                Console.WriteLine("count:{0}", classTest.count);
                Console.ReadLine();
            }
        }
    }

    运行结果:
     
    Name:BaiXue     Age:18
    count:1

  • 相关阅读:
    ibatis 批量更新(一)
    eclipse tomcat路径更改后启动报错
    xftp Initialize Flexnet Service failed / Error code: 50003
    百度网盘 文件名中(文件)含有敏感词
    一人之下第二季百度云高清下载
    React Native Mac配置指南
    Androd自己定义控件(三)飞翔的小火箭
    关于职位规划
    SSH框架之Struts(3)——Struts的执行流程之核心方法
    HDU 4891 The Great Pan (字符串处理)
  • 原文地址:https://www.cnblogs.com/melao2006/p/4239327.html
Copyright © 2011-2022 走看看