Can someone explain to me why AttributeUsage is used in a Class scenario?

Thanks

Code:
    <AttributeUsage(AttributeTargets.Parameter)> _
    Public Class SqlParameterAttribute
        Inherits Attribute
        Private _name As String
        Private _paramTypeDefined As Boolean
        Private _paramType As SqlDbType
        Private _size As Integer
        Private _precision As Byte
        Private _scale As Byte
        Private _directionDefined As Boolean
        Private _direction As ParameterDirection

        etc.............