Define a class called counter whose objects count things.

Assignment Help JAVA Programming
Reference no: EM13941249

Define a class called Counter whose objects count things. An object of this class records a count that is a nonnegative integer.

Include methods to set the counter to 0, to increase the count by 1, and to decrease the count by 1. Be sure that no method allows the value of the counter to become negative. Include an accessor method that returns the current count value and a method that outputs the count to the screen. There will be no input method or other mutator methods. The only method that can set the counter is the one that sets it to zero. Also, include a toString method and an equals method. Write a program (or programs) to test all the methods in your class definition.

Hint:

The CounterDemo class assumes that the Counter class will have methods named resetToZero(), increment(), decrement(), and getValue(). Make sure that you implement these methods.

If the output looks like:

Initial value is 0
After two increments, value is Counter@cf8583
After one decrement, value is Counter@cf8583
Result of calling counter.output() :
Counter value is 1
Counter@cf8583 equals Counter@4693c7? false
Counter@cf8583 equals Counter@4693c7? true
After resetting to zero, value is Counter@4693c7

then you have not properly defined a method named toString() that returns a string representation of the Counter's value. The strange output (e.g., "Counter@4693c7") nis produced by the default implementation of toString() in nclass java.lang.Object. n

The getValue(), equals(...), and toString() methods must be declared to return a value, and must include a return statement in the body of the method. The other methods should be declared with a return type of void. In this project, these methods should not include a return statement.

/**
Demo program that exercises the methods of the Counter class
*/
public class CounterDemo {

public static void main(String[] args) {
// Make a new counter
Counter counter = new Counter();
System.out.println("Initial value is " + counter.getValue());

// Test the increment and toString() methods.
counter.increment();
counter.increment();
System.out.println(
"After two increments, value is " + counter.toString());

// Test the decrement method
counter.decrement();
System.out.println("After one decrement, value is " + counter);

// Test the output() method
System.out.println("Result of calling counter.output() :");
counter.output();

// Make a second counter to test equals.
Counter counter2 = new Counter();
System.out.println(counter + " equals " + counter2 + "? " +
counter.equals(counter2));

// Increment counter2 so that they are equal
counter2.increment();
System.out.println(counter + " equals " + counter2 + "? " +
counter.equals(counter2));

// Reset counter2 to zero
counter2.resetToZero();
System.out.println("After resetting to zero, value is " + counter2);
}

}

/**
Class that counts things.
*/
class Counter {
/**
Current value of the counter
*/
private int value = 0;

// --------------------------------
// ----- ENTER YOUR CODE HERE -----
// --------------------------------

// --------------------------------
// --------- END USER CODE --------
// --------------------------------

/**
Prints the current value to System.out
*/
public void output() {
System.out.println("Counter value is " + value);
}}

Reference no: EM13941249

Questions Cloud

Firm pays out its excess cash as a cash dividend : A firm has a market value equal to its book value. Currently, the firm has excess cash of $7,700 and other assets of $27,300. Equity is worth $35,000. The firm has 700 shares of stock outstanding and net income of $3,500. What will the stock price pe..
Standard deviation of the portfolio return : Mr. Jones has a 2-stock portfolio with a total value of $560,000. $225,000 is invested in Stock A and the remainder is invested in Stock B. If standard deviation of Stock A is 16.80%, Stock B is 10.75%, and correlation between Stock A and Stock B is ..
Difference between paging and swapping : a) Explain the term ‘Process swapping'. Why is process swapping necessary in a typical modern operating system? Include an explanation of the difference between paging and swapping.
Spend all of excess cash on share repurchase program : A firm has a market value equal to its book value. Currently, the firm has excess cash of $2,000 and other assets of $4,800. Equity is worth $6,800. The firm has 850 shares of stock outstanding and net income of $1,050. The firm has decided to spend ..
Define a class called counter whose objects count things. : Define a class called Counter whose objects count things. An object of this class records a count that is a nonnegative integer
Environment in which human resource managers work : The environment in which human resource managers work has changed progressively over the last 2 to 3 decades and it is forecast to continue to change.
Development of management thoughts : Critically examine the central contribution of M Weber to development of management thoughts. Relevant issues to address would include: which management function or or topic is the thinker's contribution closely related?
The coupon rate is paid semi annually : BCD's $1,000 par value bonds currently sell for $798.40. The coupon rate is 10%, paid semi-annually. If the bonds have 5 years to maturity, what is the yield to maturity?
Compare an algorithm run in a parallel pipeline : Calculate the time unit and the number of processors needed for each type of systems in (i) using up to 20 processors and the size of data is n= 1000

Reviews

Write a Review

JAVA Programming Questions & Answers

  What are the main differences between javabeans and applets

What are the main differences between JavaBeans and applets? How do I use an applet that resides on a remote machine?

  Explain the concept of try catch blocks

Why would Java require this? What are some benefits of requiring that exceptions be either explicitly handled or rethrown?

  Representing a topographic map

Consider a grid of size N x N that represents a topographic map. Each tile describes the characteristics of its terrain, which could be of two types: normal or mountainous. ROBBIE the robot must navigate from a starting position (xs, ys) to a goal..

  Determine the purpose of using javascriptreg on a website

what is the purpose of using javascriptreg on a website? what is a specific example of a javascriptreg application that

  Write java program to compute how much federal need to pay

Write a java application to calculate how much federal and state tax you need to pay. The program should accomplish the following task.

  Why does tomcats first servlet request take so long

Why does Tomcat's first servlet request take so long? How do I disable port 8080? I want Tomcat to run only through my Web server, not directly through Tomcat.

  Compute performance matrix

Write a program in JAVA that will take inputs from a file and compute performance matrix similar to the following output into an output file.

  Implement a program to reverse the digits

Write a method, reverseDigit, that takes an integer as a parameter and returns the number with its digits reversed. For example, the value of reverseDigit(12345) is 54321.

  Design and implement an application to manage a tournament

Design and implement an application to manage a tennis tournament of 16 players - design and implement an application to manage a tournament. Is there anybody who knows how to do this?

  Create an application named numbers.

Create an application named Numbers. The Numbers class should have non-static public methods named sum and difference, each taking a pair of int variables as arguments. As you might expect, the sum method should add the two integers and return the..

  Why wont the following given program compile

Why won't the following program compile? Correct it so that it will compile and properly implement Comparable

  Prepare a basic code to do the followingwrite a program

prepare a basic code to do the following.write a program that shows the current time and date evaluated from the

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd