pročessing company has a class called Account used to process transactions: Method/Constructor Description constructs an account using client information public Account (Client c)

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
**Cash Processing System Overview**

A cash processing company has developed a class called `Account` to manage transaction processing. Here are the details:

### `Account` Class

| Method/Constructor                   | Description                                               |
|--------------------------------------|-----------------------------------------------------------|
| `public Account(Client c)`           | Constructs an account using client information.           |
| `public boolean process(Transaction t)` | Processes the next transaction, returning `true` if the transaction was approved, `false` otherwise. |

### `Transaction` Class Interaction

`Account` objects interact with `Transaction` objects, which have several methods, including:

| Method/Constructor     | Description                                                  |
|------------------------|--------------------------------------------------------------|
| `public int value()`   | Returns the value of this transaction in pennies (could be negative, positive, or zero). |

### `FilteredAccount` Class Design

The company intends to modify the `Account` class to filter out zero-valued transactions by introducing a new class called `FilteredAccount`. Instances of this class can replace `Account` objects, incorporating the ability to bypass processing for transactions valued at zero. Specifically, the new class should indicate that a zero-valued transaction was approved without invoking the `process` method of the `Account` class.

The new class should have a single constructor that accepts a parameter of type `Client`, incorporating the following method:

| Method/Constructor                    | Description                                                                            |
|---------------------------------------|----------------------------------------------------------------------------------------|
| `public double percentFiltered()`     | Returns the percentage of transactions filtered out (ranging from 0.0 to 100.0); returns 0.0 if no transactions are submitted. |

**Note:** All transactions enter the system through a call to the `process` method described above.
Transcribed Image Text:**Cash Processing System Overview** A cash processing company has developed a class called `Account` to manage transaction processing. Here are the details: ### `Account` Class | Method/Constructor | Description | |--------------------------------------|-----------------------------------------------------------| | `public Account(Client c)` | Constructs an account using client information. | | `public boolean process(Transaction t)` | Processes the next transaction, returning `true` if the transaction was approved, `false` otherwise. | ### `Transaction` Class Interaction `Account` objects interact with `Transaction` objects, which have several methods, including: | Method/Constructor | Description | |------------------------|--------------------------------------------------------------| | `public int value()` | Returns the value of this transaction in pennies (could be negative, positive, or zero). | ### `FilteredAccount` Class Design The company intends to modify the `Account` class to filter out zero-valued transactions by introducing a new class called `FilteredAccount`. Instances of this class can replace `Account` objects, incorporating the ability to bypass processing for transactions valued at zero. Specifically, the new class should indicate that a zero-valued transaction was approved without invoking the `process` method of the `Account` class. The new class should have a single constructor that accepts a parameter of type `Client`, incorporating the following method: | Method/Constructor | Description | |---------------------------------------|----------------------------------------------------------------------------------------| | `public double percentFiltered()` | Returns the percentage of transactions filtered out (ranging from 0.0 to 100.0); returns 0.0 if no transactions are submitted. | **Note:** All transactions enter the system through a call to the `process` method described above.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Unreferenced Objects
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education