Hirdetés

Új hozzászólás Aktív témák

  • skoda12
    aktív tag

    Egy régi Java2 könyvben találtam olyat, hogy (idézet nem teljesen szószerinti) "példánymetódusokat felüldefiniálni, osztálymetódusokat elfedni lehet".
    Össze tudná foglalni valaki pár szóban, hogy mi a különbség az elfedés és a felüldefiniálás között? A könyv alapján nem egészen világos. (osztálymetódus=statikus metódus, ha valakinek így ismerős :) )

    Írok egy példát és abból le fog tisztulni:

    package javaapplication1;

    class A{
    public static void staticF(){
    System.out.println("staticF() A");
    }

    public void f(){
    System.out.println("f() A");
    }
    }

    class B extends A{
    public static void staticF(){
    System.out.println("staticF() B");
    }

    public void f(){
    System.out.println("f() B");
    }
    }


    public class Main {


    public static void main(String[] args) {
    A a = new B();
    B b = new B();

    a.f();
    a.staticF();
    b.f();
    b.staticF();
    }

    }

    Kimenet:

    f() B
    staticF() A
    f() B
    staticF() B

Új hozzászólás Aktív témák