Note that there are some explanatory texts on larger screens.

plurals
  1. POJava data encapsulation, initializing and postconditions?
    primarykey
    data
    text
    <p>My assignment is to complete the Date class shown below. The Date class encapsulates a date by storing the month, day, and year in private instance variables. </p> <pre><code> public class Date { // declare your instance variables here // postcondition: instance variables are initialized with any valid values // you choose public Date () { } // postcondition: instance variables are initialized with the given values if they are valid // the month instance variable should be between 1-12 // the day instance variable should be between 1-31 // if the parameters are not valid, the instance variables are given different values that are valid public Date(int theMonth, int theDay, int theYear) { } // postcondition: returns a String in the form month/day/year public String toString() { } } </code></pre> <p><strong>The code below is what I have so far.</strong> Frankly, I am pretty confused about what I am supposed to do, and I don't have an instructor to ask. The output is " 2/2/0 " </p> <p>EDIT UPDATE: If I enter a year that is invalid, such as 200, it does not print the error message... My intention with the if statement was to catch errors where the year is not 4 digits. Is this correct? Thank you for any and all help!</p> <pre><code>public class Date { // declare your instance variables here private int myMonth; private int myDay; private int myYear; // postcondition: instance variables are initialized with any valid values // you choose public Date () { myMonth = 11; myDay = 11; myYear = 2011; } // postcondition: instance variables are initialized with the given values if they are valid // the month instance variable should be between 1-12 // the day instance variable should be between 1-31 // if the parameters are not valid, the instance variables are given different values that are valid public Date(int theMonth, int theDay, int theYear) { if ( theMonth &gt;= 1 &amp;&amp; theMonth &lt;= 12 ) { myMonth = theMonth; } else { System.out.print("Month Value invalid; default to 1"); myMonth = 1; } if( theDay &gt;= 1 &amp;&amp; theDay &lt;= 31 ) { myDay = theDay; } else { System.out.print("Day Value invalid; default to 1"); myDay = 1; } if( theYear &lt; 4 ) { System.out.print("Year Value invalid; default to 2000"); myYear = 2000; } else { myYear = theYear; } } // postcondition: returns a String in the form month/day/year public String toString() { return myMonth + "/" + myDay + "/" + myYear; } public static void main(String [] args) { int theMonth, theDay, theYear; theMonth = 2; theDay = 2; theYear = 200; Date date = new Date(theMonth, theDay, theYear); date.toString(); System.out.println(date); } } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload