美文网首页
32.C# 访问修饰符

32.C# 访问修饰符

作者: 技术老小子 | 来源:发表于2024-03-06 07:06 被阅读0次

<meta name="wolai" content="dDWcdCV1EWBV44ZzciXDte1709676800604">

摘要


类的访问修饰符主要有两个,即 internal 和 public,如果省略了访问修饰符,即为 internal。

类中成员的访问修饰符有 4 个,具体用法如下。

public

成员可以被任何代码访问。

private

成员仅能被同一个类中的代码访问,如果在类成员前未使用任何访问修饰 符,则默认为private。

internal

成员仅能被同一个项目中的代码访问。

protected

成员只能由类或派生类中的代码访问。派生类是在继承中涉及的。

正文


public 允许一个类将其成员变量和成员函数暴露给其他的函数和对象。任何公有成员都可以被外部的类访问。

public class Material
{
    public string Name { get; set; }
    public int Qty { get; set; }

    public void Print()
    {
        Console.WriteLine($"名称:{Name},数量{Qty}");
    }
}

调用

static void Main(string[] args)
{
    Material material =new  Material();
    material.Name = "A001";
    material.Qty = 10;
    material.Print();
}

private 允许一个类将其成员变量和成员函数对其他的函数和对象进行隐藏。只有同一个类中的函数可以访问它的私有成员变量。子类也不可以访问私有的成员变量和成员函数,即使是类的实例也不能访问它的私有成员。

public class Material
{
    public Material()
    {
        this.created_date= DateTime.Now;
    }
    //类的外部不能访问
    private DateTime created_date { get; set; }
    public string Name { get; set; }
    public int Qty { get; set; }

    public void Print()
    {
        Console.WriteLine($"名称:{Name},数量{Qty},创建日期:{created_date}");
    }
}

protected 只允许同一个类中的函数访问它的受保护成员,还有它的子类访问它的成员变量和成员函数,这样有助于实现继承。

public class Material
{
    //受保护的成员变量
    protected string MaterialNo { get; set; }
    public string Name { get; set; }
    public int Qty { get; set; }
}

public class Tool : Material
{
    public Tool()
    {
        this.MaterialNo = new Random().Next(100).ToString();
    }
}

internal 允许在同一个项目中的类访问。在同一项目中 internal 和 public 的权限是一致的。internal 不能被其他项目访问,但 public 添加引用后就可以被访问。

internal class Material
{
    public string Name { get; set; }
    public int Qty { get; set; }

    public void Print()
    {
        Console.WriteLine($"名称:{Name},数量{Qty}");
    }
}

相关文章

  • Java知识之修饰符

    Java中的修饰符 Java中的修饰符主要分为两类: 访问控制修饰符 非访问控制修饰符 访问控制修饰符分: pub...

  • C#图解教程笔记20170718

    访问修饰符 字段访问修饰符 类型 标识符; 方法访问修饰符 返回类型 方法名(){、、、} 五种成员...

  • java(3-Java 修饰符)

    Java 修饰符主要两类:访问修饰符非访问修饰符 访问控制修饰符 default (即默认,什么也不写): 在同一...

  • Java 修饰符

    修饰符 访问修饰符 非访问修饰符 1.访问修饰符用来定义类、方法或者变量,通常放在语句的最前面。- private...

  • java修饰符

    分类 访问修饰符 非访问修饰符 访问修饰符 默认的 default 在同一个包中可见 不使用任何修饰符 私有的 ...

  • JAVA基础——修饰符

    修饰符的分类 1、访问修饰符 2、非访问修饰符 一、访问修饰符 1、默认的,也称为 default,在同一包内可见...

  • Java修饰符总结

    分类 Java语言提供了很多修饰符,大概分为两类: 1.访问权限修饰符 2.非访问权限修饰符 访问权限修饰符 1....

  • Java 修饰符

    Java 修饰符 Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符 修饰符用来定义类、方...

  • Java中各种修饰符的说明

    类 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 访问修饰符与修...

  • 日常记忆Java修饰符

    Java修饰符 Java语言提供的很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符修饰符用来定义类、方法或...

网友评论

      本文标题:32.C# 访问修饰符

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