【转】C#访问权限修饰符
C#访问权限修饰符
C#中类及类型成员修饰符有以下四类:public,private,protected,internal。
public 类及类型成员的修饰符
private 类型成员的修饰符
protected 类型成员的修饰符
internal 类及类型成员的修饰符
由以上四类说明,我们知道,可以放在class前面修饰类的修饰符关键字只有public和internal,如果没写任何关键字,默认是internal.
1.public class:任何地方该类都可以被访问到。
2.internal class:只有在同一程序集内,该类才可以被访问到。
而类型成员的修饰符可以是由这四个关键字形成的五种组合,他们分别是:public,protected,private,internal,protected internal.类型成员前如果没写任何关键字,默认为private。他们具体的访问权限,我们看下图就明白了。

需要注明的是:
- protected的权限和private的权限很相似,唯一不同的是protected类型成员可以被子类继承,而private类型成员不可以被继承。
- protected internal类型成员可以被理解成protected or internal 类型成员。不存在protected and internal类型成员。
以上部分转至http://www.cnblogs.com/RascallySnake/archive/2010/05/14/1735704.html。
根据以上图片,我们可以看出:
1. Private 只能在 本项目 中的 本类 中使用。
2. Internal 能在 本项目 中的 所有类 使用。
3. Public 能在 所有项目 中的 所有类 使用
4. Protected 能在 所有项目 中的 继承类 使用
5. Protected Internal 能在 本项目的所有类 或者 所有项目的继承类 使用。= Protected + Internal的访问权限。
【转】C#访问权限修饰符的更多相关文章
- java_访问权限修饰符
java的访问权限修饰符有四种,根据权限由大到小的顺序为:public,protected,包访问权限(默认,没有修饰符),private. 根据修饰的东西不同,详细介绍如下: 1.修饰类的话分为两种 ...
- java访问权限修饰符
作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × ja ...
- Java访问权限修饰符public protected friendly private用法总结(转载好文Mark)
首先声明:Java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly.为了条理清晰,分三种不同情况来总结. 一 访问权限修饰符修饰成员变量和 ...
- Java 访问权限修饰符以及protected修饰符的理解
2017-11-04 22:28:39 访问权限修饰符的权限 访问修饰符protected的权限理解 在Core Java中有这样一段话“在Object类中,clone方法被声明为protected, ...
- java四种访问权限修饰符
java中四个访问权限修饰符: public(公开的).protected(受保护的).default(默认的).private(私有的). 它们决定了紧跟其后被定义的东西的使用范围. 适用范围< ...
- Java的访问权限修饰符
default或者friendly表示默认的访问权限修饰符.
- 访问权限修饰符-static-final-this-super-匿名对象
1.this关键字的作用 1)调用本类中的属性; 2)调用本类中的构造方法;且只能放首行,且必须留一个构造方法作为出口,即不能递归调用 3)表示当前对象; 2.匿名对象 ...
- 包和访问权限修饰符,.单例设计模式,.Object类常用方法,.内部类
1.包和访问权限修饰符 1.1 包 为什么要导包? 将字节码文件(.class)文件进行分类存放 --->包 其实就是文件夹 import java.util.Arrays; 包的划分规则 方案 ...
- Java语言中的访问权限修饰符
一个Java应用有很多类,但是有些类,并不希望被其他类使用.每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用.如何能做到访问控制呢?就需要使用访问权限修饰符. Java语 ...
随机推荐
- web系统权限设计
应该有七张表 1.appSystem 表: 主要在多系统中的 统一权限管理:主要就是系统的URL USE [Star_Permission] GO /****** 对象: Table [dbo].[A ...
- IDEA UML类图插件
idea已经集成了该功能,只是默认没打开,仍然打开Settings界面,定位到Plugins,输入UML,参考下图:
- Oracle本地网络分表模拟分区裁剪
来自讨论贴 http://www.itpub.net/thread-1877111-1-1.html 准备数据表 2014-07-20 01:38:10>create table tb_1 as ...
- 利用JBoss漏洞拿webshell方法
JBoss是一个大型应用平台,普通用户很难接触到.越是难以接触到的东西越觉得高深,借用北京公交司机李素丽的一句话“用力只能干出称职,用心才能干出优秀”,在安全上也是如此,虽然JBoss平台很难掌握,但 ...
- Java 多线程Thread和Runnable
Thread: class MyThread extends Thread { private int ticketsCont=5; //一共有5张火车票 private String name; / ...
- TRUNCATE引起CPU异常上涨
13:05 2015/9/11 午睡醒来收到几封CPU使用率预警邮件.登录对应服务器,打开资源监视器,看到sqlservr.exe进程的CPU达到40%(平常服务器CPU消耗在10%以内).查看CPU ...
- MongoDB Map Reduce
介绍 Map-Reduce是一种计算模型,简单的说就是将大批量的工作分解(MAP)执行,然后再将结果合并成最终结果(REDUCE). MongoDB提供的Map-Reduce非常灵活,对于大规模数据分 ...
- json不支持中文写入的问题解决
写两个函数,使其支持中文: function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { foreach ...
- 【转】解决:fatal error C1083: 无法打开预编译头文件
http://blog.csdn.net/aafengyuan/article/details/7988584 是这样的,我创建了一个空项目,并通过"项目属性>C/C++>预编译 ...
- spring消费RESTfull服务
使用RestTemplate做这件事非常简单 package hello; import org.slf4j.Logger; import org.slf4j.LoggerFactory; impor ...