c# 类的public private internal protected的区别
2008-12-21 22:59
387 查看
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里面的是私有.
}
}
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里面的是私有.
}
}
相关文章推荐
- c#中public,private,protected,internal的区别
- c# 修饰词public, protected, private,internal的区别
- c#中public,private,protected,internal的区别
- c# 修饰词public, protected, private,internal,protected的区别(2010-01-15)
- c# 修饰词public, protected, private,internal的区别
- c# 类的public private internal protected的区别
- C#用代码private protected public internal的区别
- c# 修饰词public, protected, private,internal,protected的区别
- c# 类的public private internal protected的区别
- c# 修饰词public, protected, private,internal,protected的区别
- c# 修饰词public, protected, private,internal,protected的区别
- c#中访问修饰符public、private、protected、internal的区别
- c#中public,private,protected,internal的区别
- c# 修饰词public, protected, private,internal,protected的区别
- [C#基础知识]之private、protected、public和internal的区别
- c# 修饰词public, protected, private,internal,protected的区别
- c# 修饰词public, protected, private,internal,protected的区别
- c# 类的public private internal protected的区别
- 关于C#代码中的private protected public internal的区别
- c#中访问修饰符public,private,protected,internal,protected internal的区别