public class test { public static void main(String[] args) { Student petar = new Student(); petar.ime = "Petar"; petar.fakultet = "PMF"; petar.jaSam(); petar.studiram(); Gradjanin komsija = petar; // siri tip = uzi tip komsija.jaSam(); // g.studiram(); Gradjanin.jaSamStatic(); // Ja sam gradjanin Student.jaSamStatic(); // Ja sam student komsija.jaSamStatic(); // Ja sam gradjanin // warning: The static method jaSamStatic() from the type Gradjanin should be accessed in a static way petar.jaSamStatic(); // Ja sam student Student brucos = (Student)komsija; // uzi tip = (uzi tip) siri tip (kastovanje) int i = (int) 12.345; brucos.studiram(); Gradjanin dobrovoljac = new Gradjanin(); Student diplomac = (Student)dobrovoljac; // run-time greska diplomac.studiram(); } } class Gradjanin { public String ime; public void jaSam() { System.out.println("Ja sam gradjanin"); } public static void jaSamStatic() { System.out.println("Static: Ja sam gradjanin"); } } class Student extends Gradjanin { public String fakultet; public void jaSam() { System.out.println("Ja sam student"); } public static void jaSamStatic() { System.out.println("Static: Ja sam student"); } public void studiram() { System.out.println("Studiram " + fakultet); } }