gpt4 book ai didi

.net - 有人可以解释 MustOverride 吗?

转载 作者:行者123 更新时间:2023-12-04 13:15:22 25 4
gpt4 key购买 nike

有人可以解释 MustOverride 的作用,但为什么要使用它?是为了暴露功能吗?

我有两个类,第一个(RoomFactory);

Public MustInherit Class RoomFactory : Inherits baseFactory
Private _roomid As Integer = 0
Private _roomname as String = ""

Public Sub New()

End Sub

Public Sub New(ByVal roomid As Integer, ByVal roomname As String)
Me.RoomId = roomid
Me.RoomName = roomname
End Sub

Public MustOverride Function CreateRoom(ByVal roomdetails As RoomFactory) As Integer
Public MustOverride Function IsRoomAvailable(ByVal roomdetails as RoomFactory) As Boolean
// .. properties removed for brevity .. //

二等(房间)
Public Class Room : Inherits RoomFactory
Public Function CreateRoom(ByVal roomdetails As RoomFactory) As Integer
Return 0
End Function
Public Function IsRoomAvailable(ByVal roomdetails As RoomFactory) As Boolean
Return False
End Function
End Class

首先,我认为这是正确的,但希望对其他方面的任何建议 - 性能等。但我想主要问题是 - 为什么使用 MustOverride?

请原谅我在这里的无知。

最佳答案

这样您就可以在基类中提供通用功能,但强制派生类自己实现特定的功能位。

在您的工厂情况下,我建议使用接口(interface)而不是抽象类,但在其他情况下它是有意义的。 System.Text.Encoding是抽象类的一个很好的例子,System.IO.Stream 也是如此。 .

关于.net - 有人可以解释 MustOverride 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1686854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com