[Java lista] override vs overload

biziclop biziclop at gmail.com
2008. Már. 11., K, 15:44:11 CET


Ez igy valoban nehez ugy lenne, de azokban a nyelvekben, ahol ehhez
hasonlo very late binding (almost too late binding) van, ott elvarjak
azt is, hogy az overloadolt fuggvenyek ne csak reszlegesen legyenek
rendezhetoek.

lsp

2008/3/11 Zsombor <gzsombor at gmail.com>:
>
>
>
> Szerintem elég zavaros, sőt eldönthetetlen esetekhez vezetne. Pl a következő
> példa esetében:
>
>
>
>
> public class Parent {
>
>     public void test(Object a, Object b, Object c) {
>
>
>         System.out.println("Parent.test(Object o)");
>
>     }
>
> }
> public class Child extends Parent {
>
>
>
>     public void test(String a, String b, Object c) {
>
>         System.out.println("string-string-object");
>
>     }
>
>
>
>     public void test(Object a, String b, String c) {
>
>         System.out.println("object-string-string");
>
>     }
>
>
>
>
>
>
>     public void test(String a, Object b, String c) {
>
>         System.out.println("string-object-string");
>
>     } }
>
>
>
> esetében egy test("Goodbye", "blue", "monday") hivás még a legöregebb
> tengerészeket is gondolkodásra késztetné :)
>
> üdv
>
>  Zs
>
>
> 2008/3/11 Fisha <fisha at freemail.hu>:
>
> >
> >
> >
> >
> >
> >
> > Hello!
> >
> >
> >
> >
> > Es ennek technikai okai vannak, vagy esetleg James igy talalta logikusnak
> a nyelv megalkotasanal?
> >
> > Azert kerdezem csak, mert szerintem kezreallob lenne, ha vegigszaladna az
> overloadon is.
> >
> >
> >
> >
> >
> >
> > Fisha                            mailto:fisha at freemail.hu
> >
> >
> >
> >
> >
> >
> > >
> >
> > br>
> >
> >
> >
> > 2008/3/11 Fisha <fisha at freemail.hu>:
> >
> >
> >
> >
> > Hello!
> >
> >
> >
> >
> > Biztos sokan vannak a listan akiknek egyertelmu az alabbi pelda mukodese,
> de bizom benne, hogy vannak olyanok is akiknek ujdonsagkent hat. Szivesen
> latnek velemenyeket arrol is, hogy szerintetek logikus-e igy a mukodese.
> >
> > A gondolatebreszto kerdes az, hogy mit ir ki az alabbi kod.
> >
> >
> >
> >
> > TermĂ(c)szetesen "Child.test(Object o)" fog kiirodni, a metĂłdus szignatura
> az fordĂ­tás során eldĹ'l, nincsen dinamikus invokáciĂł (asszem Ă­gy
> nevezik) a paramĂ(c)terek aktuális tipusa szerint.
> >
> >
> >
> >
> > ĂĽdv
> >
> >
> >
> >
> >
> >  Zs
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Udv,
> >
> > Fisha                            mailto:fisha at freemail.hu
> >
> >
> >
> >
> > Parent.java:
> >
> > package test;
> >
> >
> >
> >
> > public class Parent {
> >
> >     public void test(Object o) {
> >
> >         System.out.println("Parent.test(Object o)");
> >
> >     }
> >
> > }
> >
> > ----------------
> >
> >
> >
> >
> > Child.java:
> >
> > package test;
> >
> >
> >
> >
> > public class Child extends Parent {
> >
> >     public void test(Object o) {
> >
> >         System.out.println("Child.test(Object o)");
> >
> >     }
> >
> >
> >
> >     public void test(Long l) {
> >
> >         System.out.println("Child.test(Long l)");
> >
> >     }
> >
> > }
> >
> > -----------------
> >
> >
> >
> >
> > Main.java
> >
> > package hu.guidance.test;
> >
> >
> >
> >
> > public class Main {
> >
> >     public static void main(String[] args) {
> >
> >         Parent p = new Child();
> >
> >         p.test(new Long(5));
> >
> >     }
> >
> > }
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> >
> > Javalist mailing list
> >
> > Javalist at javagrund.hu
> >
> > http://javagrund.hu/mailman/listinfo/javalist
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > Javalist mailing list
> > Javalist at javagrund.hu
> > http://javagrund.hu/mailman/listinfo/javalist
> >
> >
>
>
> _______________________________________________
>  Javalist mailing list
>  Javalist at javagrund.hu
>  http://javagrund.hu/mailman/listinfo/javalist
>
>


További információk a(z) Javalist levelezőlistáról