Write the definition of a class Counter containing: An instance variable named counter of type int. An instance variable named limit of type int. A static int variable named nCounters which is initialized to 0. A constructor taking two int parameters that assigns the first one to counter and the second one to limit. It also adds one to the static variable nCounters. A method named increment. It does not take parameters or return a value; if the instance variable counter is less than limit, increment just adds one to the instance variable counter. A method named decrement that also doesn’t take parameters or return a value; if counter is greater than zero, it just subtracts one from the counter. A method named getValue that returns the value of the instance variable counter. A static method named getNCounters that returns the value of the static variable nCounters.

Language: Java

Challenge:

Write the definition of a class Counter containing:

  • An instance variable named counter of type int.
  • An instance variable named limit of type int.
  • A static int variable named nCounters which is initialized to 0.
  • A constructor taking two int parameters that assigns the first one to counter and the second one to limit. It also adds one to the static variable nCounters.
  • A method named increment. It does not take parameters or return a value ; if the instance variable counter is less than limit, increment just adds one to the instance variable counter.
  • A method named decrement that also doesn’t take parameters or return a value ; if counter is greater than zero, it just subtracts one from the counter.
  • A method named getValue that returns the value of the instance variable counter.
  • A static method named getNCounters that returns the value of the static variable nCounters.

SOLUTION:

Language: Java

Challenge:

Write the definition of a class Counter containing:

  • An instance variable named counter of type int.
  • An instance variable named limit of type int.
  • A static int variable named nCounters which is initialized to 0.
  • A constructor taking two int parameters that assigns the first one to counter and the second one to limit. It also adds one to the static variable nCounters.
  • A method named increment. It does not take parameters or return a value ; if the instance variable counter is less than limit, increment just adds one to the instance variable counter.
  • A method named decrement that also doesn’t take parameters or return a value ; if counter is greater than zero, it just subtracts one from the counter.
  • A method named getValue that returns the value of the instance variable counter.
  • A static method named getNCounters that returns the value of the static variable nCounters.

Solution:

public class Counter{
    private int counter;
    private int limit;
    private static int nCounters = 0;
    public Counter(int a,int b){
        counter=a;
        limit=b;
        nCounters++;
    }
    public void increment(){
        if (counter<limit)
        counter++;
    }
    public void decrement(){
        if(counter>0)
        counter--;
    }
    public int getValue(){
        return counter;
    }
    public static int getNCounters(){
        return nCounters;
    }
}