public,dim,private,protected的区别?

jiangyongfeng 2006-12-01 02:58:55
public,dim,private,protected的区别?
...全文
485 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
VirtualDesktop 2006-12-01
  • 打赏
  • 举报
回复
晕,看msdn。。。
mikeqi 2006-12-01
  • 打赏
  • 举报
回复
呵呵,学习
miniplayer 2006-12-01
  • 打赏
  • 举报
回复
使用范围
可见性
存活期
dlzhangln 2006-12-01
  • 打赏
  • 举报
回复
MSDN是最好的答案了
viena 2006-12-01
  • 打赏
  • 举报
回复
以上除了我自己的前面两句话,都是From MSDN
jiangyongfeng 2006-12-01
  • 打赏
  • 举报
回复
二楼说的不错!!!
viena 2006-12-01
  • 打赏
  • 举报
回复
只有在模块中用Dim,才有楼主的这种比较
但Dim并不是与那些访问级别修饰符并列的,只不过是省略掉了访问级别修饰符而已
默认是Private


Dim 语句

为一个或多个变量声明并分配存储空间。

您应当声明程序中使用的每个变量,以通知 Visual Basic 编译器变量的数据类型和其他信息(例如哪些代码可以访问它)。下面的示例声明一个存放 Integer 值的变量。

Dim numberOfStudents As Integer

只能在模块或过程级别使用 Dim。这意味着变量的声明上下文必须是类、结构、模块、过程或块,而不能是源文件、命名空间或接口。有关更多信息,请参见声明上下文和默认访问级别。

如果 Option Explicit 为 On(默认值),编译器将要求声明您使用的每个变量。如果指定 Option Explicit Off,则每个未声明的变量默认为 Object 数据类型,该默认值可能不是您需要的值。

您可以在 Dim 语句中指定每个变量的数据类型。您也可以指定一个初始值。如果不指定,Visual Basic 将使用默认设置。有关更多信息,请参见本帮助页中“详细信息”下的“数据类型规则”和“默认值”。下面的示例声明并初始化一个 String 变量。

Dim summary As String = "Summary of results"

您可以声明一个存放数组的变量,而数组可以存放多个值。有关更多信息,请参见本帮助页中“详细信息”下的“数组规则”。有关数组的更多信息,请参见数组 (Visual Basic)。下面的示例声明一个 Integer 数组变量。

Dim days() As Integer

通常,应该将所有 Dim 语句放在变量使用位置所在的代码区域的开头。有关更多信息,请参见本帮助页中“详细信息”下的“疑难解答”。
机器人 2006-12-01
  • 打赏
  • 举报
回复
dim 是用来定义的。
Qim 2006-12-01
  • 打赏
  • 举报
回复
楼上一个牛字。
viena 2006-12-01
  • 打赏
  • 举报
回复
已声明元素的“访问级别”是指能够对其进行访问的程度,即什么代码对其具有读取或写入权限。这不仅取决于元素本身的声明方式,还取决于元素容器的访问级别。不能访问包含元素的代码也不能访问该元素中包含的任何元素,甚至那些声明为 Public 的元素也不例外。例如,Private 结构中的 Public 变量可从包含该结构的类内部访问,但不能从该类的外部访问。

Public
声明语句中的 Public (Visual Basic) 关键字表明可从以下位置访问元素:同一项目中任意位置的代码,引用该项目的其他项目,以及由该项目生成的任何程序集。下面的代码显示一个 Public 声明的示例。

Public Class classForEverybody

仅可以在模块、接口或命名空间级别使用 Public。这意味着可以在源文件级别或命名空间级别,或者在接口、模块、类或结构内部声明 public 元素,但不能在过程内声明它。

Protected
声明语句中的 Protected (Visual Basic) 关键字表明仅可以从同一个类内部或从该类派生的类中访问元素。下面的代码显示一个 Protected 声明的示例。

Protected Class classForMyHeirs

仅可以在声明类的成员时和仅在类级别使用 Protected。这意味着可以在类中声明 protected 元素,但不能在源文件级或命名空间级,或者在接口、模块、结构或过程内部声明它。

Friend
声明语句中的 Friend (Visual Basic) 关键字表明可以从同一程序集内部访问元素,而不能从程序集外部访问。下面的代码显示一个 Friend 声明的示例。

Friend stringForThisProject As String

仅可以在模块、接口或命名空间级别使用 Friend。这意味着您可以在源文件级别或命名空间级别,或者在接口、模块、类或结构内部声明 friend 元素,但不能在过程内声明它。

Protected Friend
声明语句中的 Protected 和 Friend 关键字一同出现时,表明可从以下位置访问元素:派生类或同一程序集内,或两者皆可。下面的代码显示示例 ProtectedFriend 声明。

Protected Friend stringForProjectAndHeirs As String

仅可以在声明类的成员时且仅在类级别使用 ProtectedFriend。这意味着可以在类中声明 protected friend 元素,但不能在源文件级别或命名空间级别,或者在接口、模块、结构或过程内声明它。

Private
声明语句中的 Private (Visual Basic) 关键字表明仅可以从同一模块、类或结构内访问元素。下面的代码显示一个 Private 声明的示例。

Private numberForMeOnly As Integer

仅可以在模块级别使用 Private。这意味着可以在模块、类或结构内部声明 private 元素,但不能在源文件级别或命名空间级别、接口内部或者过程内声明它。

在模块级别,不带任何访问级别关键字的 Dim 语句与 Private 声明等效。但是,您可能希望使用 Private 关键字使代码更容易阅读和解释。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧