When instantiating a generic class, only reference type arguments are passed to the type parameters.
Hence, the correct answer is option “B”.
Explanation of Solution
Reference types only:
- Only non-primitive types can be substituted for type parameters when creating instances for generic class.
- Reference types are non-primitive types.
- The compiler autoboxes the primitive type values to reference types.
Explanation for incorrect options:
a. Primitive types only:
When creating instances for a generic class, only non-primitive types can be substituted for type parameters.
Hence, the option “A” is wrong.
c. Interface types only:
The type parameters can be specified as interface type but the arguments passed to type parameters at the time of instantiation, must be real types such as Integer, String, and so on.
Hence, the option “C” is wrong.
d. Primitive, reference, and interface types:
When creating instances for a generic class, only reference types can be substituted for type parameters.
Hence, the option “D” is wrong.
Want to see more full solutions like this?
Chapter 17 Solutions
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
- Assignment 2: - Create the first Apex class or program -- In this apex class, we have to create 2 methods -- In the first method, we will take the argument of (account id), and the return type will be (the list of contact). -- In the second method, we will take the argument of (list of account) and the return type will be ( map)arrow_forwardDesign a generic class to hold the following information about a bank account. - Balance, number of deposits this month, number of withdrawals, annual interest rate, monthly service charges. The class should have the following member functions constructor: accepts arguments for the balance and annual interest rate deposit: A virtual function that accepts an argument for the amount of the deposit. The function should add the argument to the account balance. It should also increment the variable holding the number of deposits. withdraw: A virtual function that accepts an argument for the amount of the deposit. The function should subtract the argument to the account balance. It should also increment the variable holding the number of deposits. calcInt: A virtual function that updates the balance by calculating the monthly interest earned by the account, and adding this interest to the balance. This is performed by the following formulas: Monthly Interest Rate = (Annual Interest Rate /12)…arrow_forwardpublic class Point { Create two variables: 1. Generic Variable: Variable Name: data 2. Generic Point: Varibale Name: next 10 11 12 13 /* 14 Constructor that takes in two parameters (see above comment) */ 15 16 17 18 19 20 /* 21 Setters and getters 22 */ 23 24 wwwm 25 26 /* 27 tostring: output should be in the format: 28 (data)--> (next) 29 Example: 30 Point p1,p2; 31 p1.data = 4; 32 p1.next = p2; 33 p1.toString () would be: (4) -->(p2) 34 35 36arrow_forward
- In C++ class SaleItem{public:double getprice();void setprice(double);void setName(string);string getName();double TotalItemsPrice(int);private:double price;string name;}; In the class declaration above, what is the name of the class? Which lines have member access specifiers? Which lines contain data members of the class? Which lines contain accessor functions? Which lines contain mutator functions?arrow_forwardis a construct that defines objects of the same type. A class An object A method A data fieldarrow_forwardC++ You may work on a single class. The parameter and return type s of each function and class member function should be decided in advance. The program will be best implemented as a multi-file program, (header file, the main program,..) Design a generic class to hold the following information about a bank account: Balance Number of deposits this month Number of withdrawals Annual Interest Rate Monthly service charges The class should have the following member function: Constructors Accepts arguments for the balance and annual interest rate. deposit a virtual function that accepts an argument for the amount of the deposit. The function should add the argument to the account balance. It should also increment the variable holding the number of deposits. withdraw a virtual function that accepts an argument for the amount of the withdrawal. The function should subtract the argument from the account balance. It should also increment the variable…arrow_forward
- Software Requirements: • Latest version of NetBeans IDE • Java Development Kit (JDK) 8 Procedure: 1. our progras from rhFactor non-static and private. Remove the constructor with two (2) parameters. 2o upply uncapsutation Make bloodType and 2. The names of the public setter and getter methods should be: • setBloodType() • setRhFactor() getBlood Type() getRhFactor() 3. Use the setter methods to accept user input. 4. Display the values by calling the getter methods. Sample Output: Enter blood type of patient: Enter the Rhesus factor (+ or -): O+ is added to the blood bank. Enter blood type of patient: B Enter the Rhesus factor (+ or -): B- is added to the blood bank.arrow_forwardTrue or False An interface can contain only abstract methods and constants.arrow_forwardAn enumeration can contain public constant variables O True O False An interface can extend as many interfaces as the programmer wants O True O False An abstract class must contain at least 1 abstract method O True Falsearrow_forward
- IN C++ Lab #6: Shapes Create a class named Point. private attributes x and y of integer type. Create a class named Shape. private attributes: Point points[6] int howManyPoints; Create a Main Menu: Add a Triangle shape Add a Rectangle shape Add a Pentagon shape Add a Hexagon shape Exit All class functions should be well defined in the scope of this lab. Use operator overloading for the array in Shape class. Once you ask the points of any shape it will display in the terminal the points added.arrow_forwardC++ In this problem, you will use the Bubble class to make images of colorful bubbles. You will use your knowledge of classes and objects to make an instance of the Bubble class (aka instantiate a Bubble), set its member variables, and use its member functions to draw a Bubble into an image. Every Bubble object has the following member variables: X coordinate Y coordinate Size (i.e. its radius) Color Complete main.cc Your task is to complete main.cc to build and draw Bubble objects based on user input. main.cc already does the work to draw the Bubble as an image saved in bubble.bmp. You should follow these steps: First, you will need to create a Bubble object from the Bubble class. Next, you must prompt the user to provide the following: an int for the X coordinate, an int for the Y coordinate, an int for the Bubble's size, and a std::string for the Bubble's color. Next, you must use the user's input to set the new Bubble object's x and y coordinates, the size, and the color using…arrow_forwardUsing C# Language: Programming PLO 3 Measured: Create control structures, methods with the appropriate parameters, and data structures of the appropriate type, and implement algorithms to solve problems. Design a class named Contractor. The class should keep the following information: Contractor name Contractor number Contractor start date Write one or more constructors and the appropriate accessor and mutator functions for the class. Write another class named Subcontractor that is derived from the Contractor class. The Subcontractor class should have member variables to hold the following information: Shift (an integer) Hourly pay rate (a double) The work is divided between two shifts, a day shift, and a night shift. The shift variable will hold an integer value representing the shift that the subcontractor will work. The day shift is 1 and the night shift is 2. Write one or more constructors and the appropriate accessor functions for the class. Demonstrate the classes…arrow_forward
- Microsoft Visual C#Computer ScienceISBN:9781337102100Author:Joyce, Farrell.Publisher:Cengage Learning,