webForumDet fria alternativet

Tolka interface

1 svar · 428 visningar · startad av invecklaren

invecklarenMedlem sedan jan. 2008280 inlägg
#1

Hej, jag har ärvt ett projekt med lite kod och tänkte fråga på detta forum vad vissa delar av denna kod innebär. Mina frågor finns i koden

Public Class Uppsagningsorsak

    Implements IEntity(Of BizEntities.Uppsagningsorsak) ' vad menas med Of i detta sammanhang?

    Implements ISorting(Of String)

    Private _Entity As BizEntities.Uppsagningsorsak

 ' Deklarationen av propertyn förstår jag inte heller.
    Friend Property Entity() As BizEntities.Uppsagningsorsak Implements IEntity(Of BizEntities.Uppsagningsorsak).Entity
        Get
            If _Entity Is Nothing Then
                _Entity = New BizEntities.Uppsagningsorsak
            End If

            Return _Entity
        End Get
        Set(ByVal value As BizEntities.Uppsagningsorsak)
            _Entity = value
        End Set
    End Property

'''Mer kod

End Class

Här kommer interfacet

Friend Interface IEntity(Of T)

    Property Entity() As T

End Interface
MikeEastMedlem sedan sep. 200153 inlägg
#2

Hallå!

Jag jobbar bara med C# och där ser det lite annorlunda ut, men innebörden är densamma.

T i Interface IEntity(Of T) motsvarar typen interfacet ska hantera. I ditt fall är T av typen BizEntities.Uppsagningsorsak.

Typen sätts här: Implements IEntity(Of BizEntities.Uppsagningsorsak)

Det innebär att Property Entity() As T är en property som är av typen BizEntities.Uppsagningsorsak.

Det är alltså ett generiskt interface, som kan användas hårt typat av flera klasser.

Motsvarigheten i C# skulle se ut såhär:

interface IEntity<T>

och

class UppsagningsOrsak : IEntity<UppsagningsOrsak>

Förstår du vad jag menar?

::m

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)