Tassos

Δημιουργία αντικειμένου Time σε Java.

Mar 16th, 2015
269
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.66 KB | None | 0 0
  1. {                                      Visit:   http://g-lts.info/  for more code!                            }
  2.  
  3. package time;
  4.  
  5. //import persons.Person;
  6.  
  7.  
  8. class Time
  9. {
  10.     private int hour,minute, second;
  11.    
  12.    
  13.     /* Κατασκευαστής.*/
  14.    
  15.     public Time(int h, int m, int s)
  16.     {
  17.         hour = h ;
  18.         minute = m ;
  19.         second = s;
  20.     }
  21.    
  22.     /* Τέλος κατασκευαστή.*/
  23.    
  24.    
  25.     /* ================================================================== */
  26.     /* Μέθοδοι set : */
  27.    
  28.    
  29.     public boolean setHour(int h )
  30.     { // Θέτει την ώρα ελέγχοντας την όμως.
  31.         if ( h < 0 || h > 23 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 23].
  32.             return false;
  33.  
  34.         hour = h; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε.
  35.         return true; // :)
  36.     }
  37.    
  38.    
  39.     public boolean setMinute(int m)
  40.     { // Θέτει τα λεπτά ελέγχοντάς τα όμως.
  41.         if ( m < 0 || m > 59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59].
  42.             return false;
  43.            
  44.         minute = m; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε.
  45.         return true;
  46.     }
  47.  
  48.  
  49.  
  50.     public boolean setSecond(int s)
  51.     { // Θέτει τα δευτερόλεπτα ελέγχοντάς τα όμως.
  52.         if ( s < 0 || s > 59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59].
  53.             return false;
  54.            
  55.         second = s; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε.
  56.         return true;
  57.     }
  58.    
  59.    
  60.    
  61.     /* Τέλος των μεθόδων set . */
  62.     /* ================================================================== */
  63.     /* Μέθοδοι get : */
  64.    
  65.    
  66.     public int getHour()
  67.     {
  68.         return hour;
  69.     }
  70.  
  71.    
  72.  
  73.     public int getMinute()
  74.     {
  75.         return minute;
  76.     }
  77.  
  78.  
  79.  
  80.     public int getSecond()
  81.     {
  82.         return second;
  83.     }
  84.  
  85.     /* Τέλος των μεθόδων get . */
  86.    
  87.     /* ================================================================== */
  88.    
  89.     public int toSeconds()
  90.     { // Μετατρέπει την ώρα σε δευτερόλεπτα.
  91.         int total = 0;
  92.         total = total + second; // Προσθέτουμε αρχικά τα δευτερόλεπτα στα "συνολικά δευτερόλεπτα".
  93.         total = total + minute * 60; // Μετατρέπουμε τα λεπτά σε δευτερόλεπτα (minute * 60) και τα προσθέτουμε και αυτά στο σύνολο.
  94.         total = total + hour * 3600; // Μετατρέπουμε τις ώρες σε λεπτά (hour * 3600) και τις προσθέτουμε στο σύνολο.
  95.         return total; // Τέλος επιστρέφουμε τα συνολικά λεπτά.
  96.     }
  97.  
  98.  
  99.  
  100.     public int countMidnight()
  101.     {// Επιστρέφει τα δευτερόλεπτα που υπολείπονται μέχρι το πέρας της ημέρας.
  102.         int count1 = toSeconds(); // Μετατρέπουμε καταρχήν των τρέχουσα ώρα σε δευτερόλεπτα.
  103.         int count2 = 24 * 3600; // Μετατρέπουμε την τελευταία ώρα της ημέρας σε δευτερόλεπτα.
  104.         return count2-count1; // Αφαιρούμε από τα μεσάνυχτα την τρέχουσα ώρα και βλέπουμε - επιστρέφουμε τι απομένει.
  105.     }
  106.  
  107.    
  108.    
  109.     public void print12()
  110.     {// Επιστρέφει την ώρα σε 12ωρη μορφή.
  111.         if ( hour > 12 ) // Αν είναι πάνω από 12 η ώρα, αφαιρούμε από την τρέχουσα ώρα 12.
  112.             System.out.println( hour-12 + ":" + minute + ":" + second + " μ.μ" );
  113.         else // Διαφορετικά οκ όλα είναι μια χαρά. ;)
  114.             System.out.println( hour + ":" + minute + ":" + second + " π.μ" );
  115.     }
  116.  
  117.  
  118.  
  119.     public void print24()
  120.     { // Απλώς εμφανίζει την ώρα.
  121.         System.out.println( hour + ":" + minute + ":" + second );
  122.     }
  123.    
  124.    
  125.    
  126.     public void prevSecond()
  127.     { // Πάμε την τρέχουσα ώρα 1 δευτερόλεπτο πίσω.
  128.         --second; // Αφαιρούμαι απλά 1 δευτερόλεπτο.
  129.         if ( second == -1 ) // Αν ήταν στο 0 όμως και πάει στο -1 ( δε το θέλουμε αυτό ) :
  130.         {
  131.             second = 59; // Έτσι ορίζουμε τα δευτερόλεπτα να έχουν τιμή 59 και όχι -1.
  132.             --minute; // Όμως έτσι εννοείται πως πάμε και ένα λεπτό πίσω. ;)
  133.            
  134.             if ( minute == -1 ) // Αν τα λεπτά ήταν στο 0 όμως και πάει στο -1 ( δε το θέλουμε αυτό ) :
  135.             {
  136.                 minute = 59; // Έτσι ορίζουμε τα λεπτά να έχουν τιμή 59 και όχι -1.
  137.                 hour--; // & έτσι εννοείται όμως πως πάμε και μια ώρα πίσω. ;)
  138.                
  139.                 if ( hour == -1 ) // Αν όμως και η ώρα ήταν στο 0 και πάει στο -1, τότε :
  140.                 {
  141.                     hour = 23; // ορίζουμε πως η ώρα θα είναι 23 .
  142.                 }
  143.             }
  144.         }
  145.     }
  146.  
  147.  
  148.        
  149.     public void nextSecond()
  150.     { // Πάμε 1 δευτερόλεπτο μπροστά.
  151.  
  152.         ++second; // Προσθέτουμε απλώς 1 δευτερόλεπτο στην ιδιότητα του αντικειμένου μας.
  153.  
  154.         if ( second == 60 ) // Αν τα δευτερόλεπτα όμως γίνουν 60 ( δε το θέλουμε αυτό ) :
  155.         {
  156.             minute++; // Αυτό σημαίνει πως πάμε τελικά 1 λεπτό εμπρός ( χάρης του ενός δευτερολέπτου )
  157.             second = 0; // και τα δευτερόλεπτα εννοείται μηδενίζονται.
  158.            
  159.             if ( minute == 60 ) // Αν τα λεπτά όμως γίνουν 60 ( δε το θέλουμε αυτό ) :
  160.             {
  161.                 hour++; // Τότε τελικά πάμε μια ώρα εμπρός
  162.                 minute = 0; // και τα λεπτά μηδενίζονται.
  163.                
  164.                 if ( hour == 24 ) // Τέλος αν η ώρα γίνει 24 ( πράγμα το οποίο δε το θέλουμε )
  165.                 {
  166.                     hour = 0; // Η ώρα μηδενίζει. :)
  167.                 }
  168.             }
  169.         }
  170.     }
  171.  
  172.    
  173.    
  174.    
  175.    
  176.    
  177.    
  178.    
  179.    
  180.    
  181. }
  182.  
  183.  
  184.  
  185. /* ************************************* Main ************************************* */
  186.  
  187.  
  188.  
  189.  
  190. public class Main {
  191.  
  192.     public static void main (String[] args)
  193.     {
  194.        
  195.         Time t1 = new Time(23,59,59); /* Δημιουργία του αντικειμένου t1 τύπου Time. */
  196.         Time t2 = new Time(22,59,59); /* Δημιουργία του αντικειμένου t2 τύπου Time. */
  197.         // Δημιουργούμε το αντικείμενο t1 και θέτουμε απευθείας την ώρα.
  198.         // Δημιουργούμε το αντικείμενο t2 και θέτουμε απευθείας την ώρα.
  199.        
  200.        
  201.         t1.print12(); // Εμφανίζουμε την ώρα σε 12ωρη μορφή.
  202.        
  203.         t2.print24(); // Εμφανίζουμε την ώρα σε 24ωρη μορφή.
  204.        
  205.         System.out.println("Η ώρα άλλαξε. ");
  206.        
  207.         t2.nextSecond(); // Πάμε 1 sec μπροστά.
  208.        
  209.         t2.print24();// Εμφανίζουμε την ώρα σε 24ωρη μορφή.
  210.        
  211.         System.out.println("Προς τα κάτω. ");
  212.  
  213.        
  214.         t2.prevSecond(); // Αφαιρούμε 1 sec από την τρέχω ώρα του t2.
  215.        
  216.         t2.print24(); // Εμφανίζουμε την ώρα σε 24ωρη μορφή.
  217.        
  218.        
  219.         System.out.println( "Η t1 απέχει από τα μεσάνυχτα : " + t1.countMidnight() );
  220.         System.out.println( "Η t2 απέχει από τα μεσάνυχτα : " + t2.countMidnight() );
  221.  
  222.        
  223.     }
  224.    
  225.    
  226.    
  227. }
  228.  
  229.  
  230.  
  231. {                                      Visit:   http://g-lts.info/  for more code!                            }
Advertisement
Add Comment
Please, Sign In to add comment