I need an application class that utilizes the methods written in the following i
ID: 3624486 • Letter: I
Question
I need an application class that utilizes the methods written in the following instantiation class named Month.java:public class Month
{
private int monthNumber;
// no-arg constructor
public Month()
{
monthNumber = 1;
}
// month name constructor
public Month(int number)
{
setMonthNumber(number);
}
public Month(String m)
{
String upper = m.toUpperCase();
if( upper.equals("JANUARY") )
setMonthNumber(1);
else if( upper.equals("FEBRUARY") )
setMonthNumber(2);
else if( upper.equals("MARCH") )
setMonthNumber(3);
else if( upper.equals("APRIL") )
setMonthNumber(4);
else if( upper.equals("MAY") )
setMonthNumber(5);
else if( upper.equals("JUNE") )
setMonthNumber(6);
else if( upper.equals("JULY") )
setMonthNumber(7);
else if( upper.equals("AUGUST") )
setMonthNumber(8);
else if( upper.equals("SEPTEMBER") )
setMonthNumber(9);
else if( upper.equals("OCTOBER") )
setMonthNumber(10);
else if( upper.equals("NOVEMBER") )
setMonthNumber(11);
else if( upper.equals("DECEMBER") )
setMonthNumber(12);
}
// monthNumber mutator
public void setMonthNumber(int number)
{
// input validation
// valid input 1 - 12 otherwise default to 1
if ( (number >= 1) && (number <= 12) )
monthNumber = number;
else
monthNumber = 1;
}
//accessor for monthNumber
public int getMonthNumber()
{
return monthNumber;
}
// generator for name of month
public String getMonthName()
{
switch (monthNumber)
{
case 1:
return "JANUARY";
case 2:
return "FEBRUARY";
case 3:
return "MARCH";
case 4:
return "APRIL";
case 5:
return "MAY";
case 6:
return "JUNE";
case 7:
return "JULY";
case 8:
return "AUGUST";
case 9:
return "SEPTEMBER";
case 10:
return "OCTOBER";
case 11:
return "NOVEMBER";
case 12:
return "DECEMBER";
default:
return "JANUARY";
}
}
// toString overload
public String toString()
{
return getMonthName();
}
public boolean equals(Month m)
{
if ( m.getMonthNumber() == this.getMonthNumber() )
return true;
else
return false;
}
public boolean greaterThan(Month m)
{
if ( this.getMonthNumber() > m.getMonthNumber() )
return true;
else
return false;
}
public boolean lessThan(Month m)
{
if ( this.getMonthNumber() < m.getMonthNumber() )
return true;
else
return false;
}
}
Explanation / Answer
public class monthTest
{
public static void main(String args[])
{
//declaring object with constructor call
Month object1=new Month();
//declaring object with parameterized
//constructor call
Month object2=new Month("November");
//setting first object
object1.setMonthNumber(6);
//to string method call
System.out.println(object1);
System.out.println("Object 2 month number:"
+object2.getMonthNumber());
//Testing equals method
if(object1.equals(object2))
System.out.println("Two objcects equal");
else
System.out.println("Two objcects not equal");
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.