method; the user interface provided that allows user to select a message is robust, handles invalid entries, and prevents the user from entering an index that is beyond the range of the indices for the Array; loop uses length of Array to control loop Meets ― Proficient ‖ criteria and uses a different random number for the index for each data structure Meets ― Proficient ‖ criteria substantiated with the correct format used to return the message string Meets ― Proficient ‖ criteria substantiated with formatted printing used to display the introduction; message displayed is aesthetically pleasing; introduction() method uses getters or accessor methods to get the current value of the first name and last name instance variables Meets ― Proficient ‖ criteria and the class includes additional, creative or real-world private