Class
OutOfBoundsException
Description
Occurs when code tries to access an array element that doesn't exist.
Properties
Name |
Type |
Read-Only |
Shared |
---|---|---|---|
Methods
Name |
Parameters |
Returns |
Shared |
---|---|---|---|
Property descriptions
OutOfBoundsException.ErrorNumber
ErrorNumber As Integer
Used to contain an error number that describes the runtime error.
OutOfBoundsException.Message
Message As String
Used to contain descriptive text to display when the runtime exception is encountered.
Method descriptions
OutOfBoundsException.Constructor
Constructor(message As String = "", errorCode As Integer = 0)
Note
Constructors are special methods called when you create an object with the New keyword and pass in the parameters above.
Used to raise your own RuntimeException with a message and optional error code.
OutOfBoundsException.Stack
Stack As String()
Returns a String array that contains a list of all of the methods in the stack from the main entrypoint to the point at which the exception was invoked.
The stack contains all the method names up and including the current method name.
This feature only works if the IncludeFunctionNames property on the App object is selected in the Shared Build Settings.
In addition to your own method calls, you will also see framework method calls, but these may not always be completely accurate due to insufficient symbols for the OS to resolve.
OutOfBoundsException.StackFrames
StackFrames As StackFrame()
Returns an array containing the stack when the exception was first raised.
Notes
An OutOfBoundsException error occurs when your code uses an array index that is out of range. This occurs, for example, if you forget that arrays are zero-based and you make an error when you try to access the last element.
Sample code
This example is supposed to display the fonts installed on the user's computer in a ListBox. It generates an OutOfBoundsException because the loop should be from 0 to nFonts-1 rather than from 1 to nFonts. When the loop gets to nFonts, the value of i is out of range and the error occurs.
Var nFonts As Integer
nFonts = System.FontCount
For i As Integer = 1 To nFonts
ListBox1.Addrow(System.FontAt(i))
Next
If you run this code in a built application, you will see a generic error message when i reaches the value of nFonts:
An exception of class OutOfBoundsException was not handled. The application must shut down.
You can handle the exception by adding the following code:
Var nFonts As Integer
nFonts = System.FontCount
For i = 1 To nFonts
ListBox1.AddRow(System.FontAt(i))
Next
Exception err
If err IsA OutOfBoundsException Then
MessageBox("The value: " + i.ToString + " is out of range!")
End If
Compatibility
All project types on all supported operating systems.
See also
RuntimeException parent class; RuntimeException class; Function, Raise, Sub statements; Nil datatype, Exception, Try statements.