Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
4th Edition
ISBN: 9780134787961
Author: Tony Gaddis, Godfrey Muganda
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Chapter 17.6, Problem 17.19CP
Program Plan Intro
Generic class:
- It is a class in which the class name is followed by the type parameter section.
- In generic class, one or more type arguments are separated by commas.
- The programmers are enabled to specify a single class declaration with a set of related type.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
public 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
36
what is the generic term for a method that creates an instance of a class (constructors?) and how would you call it for a class named MyClass that does not take any parameters?
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 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)…
Chapter 17 Solutions
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
Ch. 17.1 - Prob. 17.1CPCh. 17.1 - When ArrayList is used as a non-generic class, why...Ch. 17.1 - Suppose we use the following statement to...Ch. 17.1 - Assume we have used the statement shown in...Ch. 17.2 - Prob. 17.5CPCh. 17.2 - Prob. 17.6CPCh. 17.2 - Prob. 17.7CPCh. 17.2 - Prob. 17.8CPCh. 17.3 - Prob. 17.9CPCh. 17.3 - Prob. 17.10CP
Ch. 17.3 - Prob. 17.11CPCh. 17.3 - Prob. 17.12CPCh. 17.3 - Prob. 17.13CPCh. 17.3 - Prob. 17.14CPCh. 17.4 - Prob. 17.15CPCh. 17.5 - Prob. 17.16CPCh. 17.5 - Prob. 17.17CPCh. 17.6 - Prob. 17.18CPCh. 17.6 - Prob. 17.19CPCh. 17.6 - Prob. 17.20CPCh. 17.8 - Prob. 17.21CPCh. 17.8 - Prob. 17.22CPCh. 17.9 - Prob. 17.23CPCh. 17.9 - During the process of erasure, when the compiler...Ch. 17.9 - Prob. 17.25CPCh. 17 - Prob. 1MCCh. 17 - Prob. 2MCCh. 17 - Look at the following method header: void...Ch. 17 - Look at the following method header: void...Ch. 17 - Look at the following method header: void...Ch. 17 - Look at the following method header: void...Ch. 17 - Prob. 7MCCh. 17 - Prob. 8MCCh. 17 - Prob. 9MCCh. 17 - The process used by the Java compiler to remove...Ch. 17 - True or False: It is better to discover an error...Ch. 17 - Prob. 12TFCh. 17 - True or False: Type parameters must be single...Ch. 17 - Prob. 14TFCh. 17 - Prob. 15TFCh. 17 - True or False: You cannot create an array of...Ch. 17 - Prob. 17TFCh. 17 - Prob. 18TFCh. 17 - Prob. 1FTECh. 17 - Assume the following is a method header in a...Ch. 17 - public class MyClassT { public static void...Ch. 17 - public class PointT extends Number super Integer {...Ch. 17 - Assume there is a class named Customer. Write a...Ch. 17 - Assume names references an object of the...Ch. 17 - Prob. 3AWCh. 17 - Prob. 4AWCh. 17 - Prob. 5AWCh. 17 - Prob. 6AWCh. 17 - Prob. 7AWCh. 17 - Prob. 1SACh. 17 - Look at the following method header: public T...Ch. 17 - Prob. 3SACh. 17 - Do generic types exist at the bytecode level?Ch. 17 - Prob. 5SACh. 17 - When the compiler encounters a class, interface,...Ch. 17 - Prob. 1PCCh. 17 - Prob. 2PCCh. 17 - Prob. 3PCCh. 17 - Prob. 4PCCh. 17 - Prob. 5PCCh. 17 - Prob. 6PCCh. 17 - Prob. 7PC
Knowledge Booster
Similar questions
- 3. The interface Range is defined below:public interface Range{ void setLimits(int x, int y); int getNumber();} Implementations of Range should exhibit the following behaviour:• The setLimits method should store its parameter values somewhere to serve as the lower and upper limits of the range appropriately.• A call to getValue should return an integer that is always greater than or equal to the lower limit and less than or equal to the upper limit.The class RandomInteger is an implementation of the interface Range. It also has the following features:• It has two fields of int type, low and high, to record the lower and upper limits of the range, respectively.• It has single constructor method that takes two integers and stores them in the appropriate fields. Note: You should make use of the setLimits method.• A call to the method getNumber should return a random number that is always within the range, i.e. greater than or equal to the lower limit and less than or equal to the upper…arrow_forwardCircular Queue: A circular queue is the extended version of a regular queue where the last element is connected to the first element. Thus forming a circle-like structure. Create a C++ generic abstract class named as CircularQueue with the following: Attributes: Type*arr; int front; int rear; int maxSize; Functions: virtual void enqueue(Type) = 0; Adds the element of type Type at the end of the circular queue. virtual Type dequeue() = 0; Deletes the first most element of the circular queue and returns it. PLEASE USE C++arrow_forward#include using namespace std; class MyClass { private: static int no0f0bjects; public: MyClass() { noof0bjects++; } MyClass() { noof0bjects--; } static void showNoOfObjects() { cout <« "The number of objects = " <« noofobjects « endl; } int add(int fNo, int sNo) { return fNo + sNo; } int add(double fNo, int sNo) { return fNo + sNo; } int sub(int fNo, int sNo, int tNo = 4) return fNo - sNo - tNo; }; //End of class int MyClass::no0f0bjects = 0; // Tester int main() { MyClass mc1; cout <<"Result = " << mc1.add(6.5, 8) « endl; MyClass::showNo0f0bjects(); MyClass mc2; cout << "Sub = cout << "Sub " << mc2.sub(20, 10) < endl; MyClass::showNo0f0bjects(); « mc2.sub(20, 10, 5) < end%; return 0; }arrow_forward
- Lab Goal : This lab was designed to teach you more object oriented programming and start you down the path of creating larger programs and games like BlackJack and Elevens [ one of the new AP CS A Labs ]. You will create a Deck class that contains a List < Card >Lab Description : You need to design a class that contains an instance variables which is a List < Card > and an int that keeps track of the top card position . You then need to make a constructor and related methods. You will need a dealCard method and a shuffle method. Use the template shown below. /make a Deck classpublic static final int NUMCARDS = 52;public static String[] SUITS = "CLUBS HEARTS DIAMONDS SPADES".split(" ");private List<Card> cards;private int top;//make a Deck constructor//refer cards to new ArrayList//set top to the top of the deck 51//loop through all suits//loop through all faces 1 to 13//add a new BlackJackCard to the deck//make a dealCard() method that returns the top card//write…arrow_forwardclass displayClass{public:void print();...private:int listLength;int *list;double salary;string name;} Write the definition of the function to overload the assignment operator for the class displayClass.arrow_forwardNoteADT - Show the interface and all abstract methods NoteDataStructureClass - Show the following methods: default constructor, overloaded constructor, copy constructor, setValue (calls other methods: setStrValue, setKeyColor, setFrequency), setLength (calls setStrLength), setFrequency (should be double value- cast)setKeyColor, getValue, getLength, getKeyColor, getFrequency, toString. NoteClientDemoClass –Instantiate two Note objects using the overloaded constructor and two Note objects using the default constructor. A sample output for 1 Note object might appear like: F# Length: Eighth note Value: -3 Black key (sharp) 369.995672 Hzarrow_forward
- True or false?(a) You can override a nonprivate method defined in a superclass.(b) You can override a private method defined in a superclass.(c) You can override the initializer defined in a superclass. (d) When constructing an object from a subclass, its superclass’s initializer is automatically invoked.arrow_forwardT/F 1. Interface classes cannot be extended but classes that implement interfaces can be extended.arrow_forwardclass RandomClass {public: RandomCalss operator/(RandomClass); private: int x,y; }; int main() { RandomClass x,y; cout << x / y; <------------------------------------ } What is x / y equivalent to as a function call? topic is operator overloading c++arrow_forward
- Calculator Class In the file Calculator.java, write a class called Calculator that emulates basic functions of a calculator: add, subtract, multiply, divide, and clear. The class has one private member field called value for the calculator's current value. Implement the following Constructor and instance methods as listed below: public Calculator() - Constructor method to set the member field to 0.0 public void add(double val) - add the parameter to the member field public void subtract(double val) - subtract the parameter from the member field public void multiply(double val) - multiply the member field by the parameter public void divide(double val) - divide the member field by the parameter public void clear( ) - set the member field to 0.0 public double getValue( ) - return the member field Given two double input values num1 and num2, the program outputs the following values: The initial value of the instance field, value The value after adding num1 The value after…arrow_forwardThe interface Range is defined below:public interface Range{ void setLimits(int x, int y); int getNumber();}Implementations of Range should exhibit the following behaviour:• The setLimits method should store its parameter values somewhere to serve as the lower and upper limits of the range appropriately.• A call to getValue should return an integer that is always greater than or equal to the lower limit and less than or equal to the upper limit.The class RandomInteger is an implementation of the interface Range. It also has the following features:• It has two fields of int type, low and high, to record the lower and upper limits of the range, respectively.• It has single constructor method that takes two integers and stores them in the appropriate fields. Note: You should make use of the setLimits method.• A call to the method getNumber should return a random number that is always within the range, i.e. greater than or equal to the lower limit and less than or equal to the upper limit.…arrow_forwardwhat is the difference between overriding a super class method and overloading a super class method?arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT