public , private ,static ,dim 四个的详细区别。求详解。。

如题所述

1、Public和Private一般用于定义全局变量,也可以在类中使用。

1-1、区别在于:
[Public]前者定义的是公共变量,如果在一个模块当中使用,那么整个应用程序都能使用它所定义的变量,如果在类中使用,那么它就是一个共有属性。

[Private]而后者定义的是私有变量,如果在一个模块中使用,那么只有这个模块才能访问到它所定义的变量,如果在类中使用,那么它就是一个私有属性。

2、Dim和Static一般在过程(Sub或者Function)内部使用,它们所定义的变量都只能在过程内部被访问。

2-1、区别在于:
[Dim]前者定义的是动态变量,过程一旦结束,该变量所占有的内存就会被系统回收,而变量所储存的数据就会被破坏。

[Static]后者定义的是静态变量,这意味着在过程结束后这个变量所占有的内存不会被回收,数据当然也不会被破坏了,这样当你下次再调用该过程的时候,数据就依然存在。

相比之下,Public和Static都有保留数据不被破坏的作用,但是,前者适合于那些所有过程都可能访问到的变量,而后者则把变量的作用范围缩在最小(只在该过程内能被访问)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-03
public:整个项目都可以访问。private:只有本类可以使用。static:还是要根据前面的来定义访问修饰,static是静态的,可以不创建对象直接点出来。dim:这个好像是VB里面定义变量的东西。VB是弱类型的语言。
第2个回答  2013-08-03
public :公有,应用于类中,外部用户可以访问该类产生的对象的公有方法或者数据private :私有,应用于类中,外部用户不能访问该类产生的对象的私有方法或者得数据
-----------------------------
以上两者在继承方面也有许多不同点,详情看下书,不然也打不下那么多.

static:静态 ,有静态变量,静态函数啥的,在反汇编里我们会发现,他总是存在于全局数据区dim:是vb的吗?就是指声明吧,象php中的var,抱歉,五六年前用的vb,应该就是这样的意思了.
第3个回答  2013-08-03
Private
这个变量/函数只能在所定义的代码文件内使用。
Public
这个变量/函数能在这个工程内所有的代码文件内使用。要注意的是,如果你把它定义在了一个控件或者类里边,比如Form1,那在使用时它前面要加上控件名和类名,比如Form1.变量名。
Dim
同Private
Const (可以定义为 "Private Const" or "Public Const")
这个变量是只读,默认是 Private Const。
Global
同Public。Static
每次保存着上次修改过的值。
相似回答