shapes.vb

来自「Mastering VBNet Include Source Code」· VB 代码 · 共 117 行

VB
117
字号
Option Strict On
Public Class Triangle
    Inherits Shape
    Private side1, side2, side3 As Double

    Sub New(ByVal sideA As Double, ByVal sideB As Double, ByVal sideC As Double)
        MyBase.New()
        side1 = sideA
        side2 = sideB
        side3 = sideC
    End Sub

    Sub New()

    End Sub

    Property SideA() As Double
        Get
            SideA = side1
        End Get
        Set(ByVal Value As Double)
            side1 = Value
        End Set
    End Property

    Property SideB() As Double
        Get
            SideB = side2
        End Get
        Set(ByVal Value As Double)
            side2 = Value
        End Set
    End Property

    Public Property SideC() As Double
        Get
            SideC = side3
        End Get
        Set(ByVal Value As Double)
            side3 = Value
        End Set
    End Property

    Public Overrides Function Area() As Double
        Dim Perim As Double
        Perim = Perimeter()
        Return (Math.Sqrt(Perim * (Perim - side1) * (Perim - side2) * (Perim - side3)))
    End Function

    Public Overrides Function Perimeter() As Double
        Return (side1 + side2 + side3)
    End Function

End Class

Public Class Circle
    Inherits Shape
    Private cRadius As Double

    Sub New(ByVal radius As Double)
        MyBase.New()
        cRadius = radius
    End Sub

    Sub New()

    End Sub

    Public Property Radius() As Double
        Get
            Radius = cRadius
        End Get
        Set(ByVal Value As Double)
            cRadius = Value
        End Set
    End Property

    Public Overrides Function Area() As Double
        Return (Math.PI * cRadius ^ 2)
    End Function

    Public Overrides Function Perimeter() As Double
        Return (2 * Math.PI * cRadius)
    End Function
End Class

Public Class Square
    Inherits Shape
    Private sSide As Double

    Sub New(ByVal Side As Double)
        MyBase.New()
        sSide = Side
    End Sub

    Sub New()

    End Sub

    Public Property Side() As Double
        Get
            Side = sSide
        End Get
        Set(ByVal Value As Double)
            sSide = Value
        End Set
    End Property

    Public Overrides Function Area() As Double
        Area = sSide * sSide
    End Function

    Public Overrides Function Perimeter() As Double
        Return (4 * sSide)
    End Function
End Class

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?