您的位置:首页 > 编程语言 > C#

c# 类的public private internal protected的区别

2012-08-30 20:27 363 查看
C#的类和Java一样有影响的范围限制

public 修饰的类,可以在整个系统的任意地方调用,是完全公开的.

private 相反的,只能在类内部调用.任何实例,无法调用private调用.

internal 仅为同项目(这里的项目是只单独的项目,而不是整个解决方案)调用,按照我的理解,应该是和java的friendly一样的效果.

protected 自己及自己的子类可以调用

好象和java相差就一个internal和friendly

================================================

这三个修饰符如果修饰的都是类中的成员的话,public 修饰的成员可以被所有的类访问(本类,别的类,本类的子类),private修饰的成员只能被本类访问,protected修饰的成员只能被本类和本类的子类所访问。

================================================

public意思是指变量可以被继承的类和new的实例条用.作用于全域.

private 只能在基类中使用. 继承的,实例后的都不可以.

using System;

class Vehicle

{

public int wheel; //公有变量wheel,

private float weight: //私有变量weight

public void F()

{

wheel=4; //合法调用

weight=2.2; //合法调用.

}

}

class Train

{

public int num; //公有变量 num

private int passenger; //私有变量passenger

public void F()

{

num=4; //合法

passenger=100; //合法

Vehicle v= new Vehicle();

v.wheel=4; //合法, 调用到Vehicle的类中变量.

v.weight=2.2; //不合法. 因为vehicle中的weight是私有的.

}

}

class Car:Vehicle //car的类继承自vehicle类.

{

int passenger;

public void K()

{

wheel=6; //合法.

weight=4.2 //不合法. //因为vehicle里面的是私有.

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: