public class Car {
// κατάσταση αυτοκινήτου
public Color color; // χρώμα
private String licenseNumber; // αριθμός κυκλοφορίας
public int cc; // κυβισμός κινητήρα
private double speed; // ταχύτητα
public static int numberOfCars = 0; // αριθμός αυτοκινήτων
// κατασκευαστής χωρίς ορίσματα
public Car() {
numberOfCars++;
}
// κατασκευαστής με ορίσματα
public Car(Color color, String licenseNumber, int cc) {
this();
this.color = color;
this.licenseNumber = licenseNumber;
this.cc = cc;
}
// συμπεριφορά αυτοκινήτου
public void startEngine() {...} // εκκίνηση του κινητήρα
public void stopEngine() {...} // σβήσιμο του κινητήρα
public void turnLeft(int degrees) {...} // στροφή αριστερά
public void turnRight(int degrees) {...} // στροφή δεξιά
public void break() {...} // φρενάρισμα
public double getSpeed() {return speed;} // μέτρηση ταχύτητας
// στατική μέθοδος
public static int getNumberOfCars() {return numberOfCars;}
}
Στιγμιοτύπου:
static:
Με τη λέξη-κλειδί this ένα αντικείμενο (το στιγμιότυπο μιας κλάσης) μπορεί να αναφερθεί στον ίδιο του τον εαυτό
Οι στατικές (static) μέθοδοι δε μπορούν να χρησιμοποιήσουν το this, αφού δεν αναφέρονται σε ένα συγκεκριμένο αντικείμενο
public class Time {
private static final int HOURS_PER_DAY = 24;
private static final int MINUTES_PER_HOUR = 60;
private static final int SECONDS_PER_MINUTE = 60;
private int hour;
private int minute;
private int second;
public Time() {
}
public Time(int hour, int minute, int second) {
this.hour = hour;
this.minute = minute;
this.second = second;
}
public int getHour() {
return hour;
}
public void setHour(int h) {
hour = ((h >= 0 && h < HOURS_PER_DAY) ? h : 0);
}
public int getMinute() {
return minute;
}
public void setMinute(int m) {
minute = ((m >= 0 && m < MINUTES_PER_HOUR) ? m : 0);
}
public int getSecond() {
return second;
}
public void setSecond(int s) {
second = ((s >= 0 && s < SECONDS_PER_MINUTE) ? s : 0);
}
public void setTime(int h, int m, int s) {
setHour(h);
setMinute(m);
setSecond(s);
}
}
public class TimeTest {
public static void main(String args[]) {
Time t1 = new Time();
Time t2 = new Time(12, 25, 42);
t2.setTime(3, 4, 8);
t1.setTime(0, 3, 15);
System.out.println(t2.getHour() + " " + t2.getMinute() + " " + t2.getSecond());
System.out.println(t1.getHour() + " " + t1.getMinute() + " " + t1.getSecond());
}
}
private static final double PI = 3.14;
or
private final float PI = 3.14F;
import java.util.Date;
public class Employee {
private String firstName;
private String lastName;
private Date birthDate;
private Date hireDate;
public Employee(String fN, String lN, Date dateOfBirth, Date dateOfHire) {
firstName = fN;
lastName = lN;
birthDate = dateOfBirth;
hireDate = dateOfHire;
}
public String toString() {
return "Name of employee: " + firstName + ", "
+ "Surname of employee: " + lastName + ", " + "Date of birth: "
+ birthDate + ", " + "Date of hire: " + hireDate + ". ";
}
}
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class EmployeeTest {
public static void main(String args[]) {
try {
Date birth = new SimpleDateFormat("MM/dd/yy").parse("05/12/95");
Date hire = new SimpleDateFormat("MM/dd/yy").parse("10/9/05");
Employee employee = new Employee("Tim", "Yellow", birth, hire);
System.out.println(employee.toString());
} catch (ParseException e) {
e.printStackTrace();
}
}
}