问一个不同class里调用Function的问题

lgvhghg 2017-09-15 10:00:24
有一个Class1,里面有个Function 我定义成Shared

Public Class Class1
Public Shared Function SelectQuery(ByVal sql As String) As DataTable
。。。。。。。。。省略。。。。。。。。
Return retTable
end Class


然后在另一个Class2里面调用它

Public Class Class2
Dim slResult = Class1.SelectQuery(replaceSql)
End Class


领导告诉我Class1的SelectQuery不要使用Shared
让我在Class2用到SelectQuery的时候new一下

我不明白怎么个new法?

有高手能指点一下吗?
...全文
1214 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgvhghg 2017-09-21
  • 打赏
  • 举报
回复
引用 2 楼 sp1234 的回复:
所谓 new 或者不去 new,关键点根本不在于照猫画虎地形式。你应该问问你们“领导”这里的目的和设计含义。(除非是女孩子刚学编程) 面向对象的系统设计和 OOPL 实现中,对象的方法代码中需要调用
Me.XXXXX
的字段/属性/事件等等机制,需要将代码作用域限定为当前对象,以此实现面向对象系统分析和设计所具有的”封装、继承、多态”的特性。但是假设就是写一个古老的传统的非面向对象的类库函数,根本不用对象封装,根本不用 Me/new,就是 Shared,甚至应该把整个 class 声明为 Shared 才好。
我不是女孩子,我们领导是女孩子 她说用share的话,很多函数同时调用的话,可能会引起锁死 真假不清楚,反正让改咱就得改啊
lgvhghg 2017-09-21
  • 打赏
  • 举报
回复
引用 1 楼 sp1234 的回复:
new class1.SelectQuery(....) 不过,你的领导为啥要你 new 啊?从你的帖子这里根本看不出来。
谢谢大哥了 搞定了 Dim class1 As New class1 Dim slResult = class1 .SelectQuery(replaceSql)
  • 打赏
  • 举报
回复
所谓 new 或者不去 new,关键点根本不在于照猫画虎地形式。你应该问问你们“领导”这里的目的和设计含义。(除非是女孩子刚学编程) 面向对象的系统设计和 OOPL 实现中,对象的方法代码中需要调用
Me.XXXXX
的字段/属性/事件等等机制,需要将代码作用域限定为当前对象,以此实现面向对象系统分析和设计所具有的”封装、继承、多态”的特性。但是假设就是写一个古老的传统的非面向对象的类库函数,根本不用对象封装,根本不用 Me/new,就是 Shared,甚至应该把整个 class 声明为 Shared 才好。
  • 打赏
  • 举报
回复
new class1.SelectQuery(....) 不过,你的领导为啥要你 new 啊?从你的帖子这里根本看不出来。

16,556

社区成员

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

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