Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

Îåêßíçóå áðü ôï ìÝëïò angarato_surion. Τελευταία δημοσίευση από το μέλος angarato_surion στις 22-03-2006, 17:30. Υπάρχουν 9 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  11-03-2006, 23:52 10583

    Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    μπορει καποις να κανει inheritance με δυο βαδικες κλάσεις;
    στην c#;

    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  12-03-2006, 00:15 10584 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Αυτό απλά δεν γίνεται. Θα πρέπει να χρησιμοποιήσεις κάποια σχεδίαση που δεν απαιτεί μια κλάση να κάνει inherit από πολλαπλές base classes.



    Το πολλαπλό inheritance χρειάζεται για δύο κυρίως λόγους. Είτε επειδή θέλουμε μια κλάση να μπορεί να χρησιμοποιηθεί στη θέση των parents της, είτε επειδή θέλουμε να χρησιμοποιήσουμε τα functions των parents.



    Το πρώτο μπορούμε να το πετύχουμε αν αντί να κάνουμε inherit από τους parents, ορίσουμε ένα interface από το οποίο θα κάνουν inherit και οι parents και η κλάση.



    Στη δεύτερη περίπτωση θα πρέπει η κλάση μας να έχει πρόσβαση σε κάποιο instance των parents για να τους καλέσει. Αυτό μπορεί να γίνει αν π.χ. η κλάση περιέχει κάποια private fields με αντικείμενα των parents. Αυτός είναι και ο τρόπος με τον οποίο μπορούσε να υλοποιηθεί το inheritance στην VB6.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  12-03-2006, 01:08 10585 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Δυστυχώς αυτό δε βολεύει πάντα Παναγιώτη. Πχ, σε ένα ASP.Net project, θέλω να ορίσω κοινές μεθόδους για Page, MasterPage και Controls, και αναγκάζομαι να ξαναγράψω τον ίδιο κώδικα (φυσικά έχω Interface, αλλά για λόγους πληρότητας μόνο).



    Για να πω την αλήθεια, δε δοκίμασα να κάνω Inherit από την Control κλάση, χρησιμοποιώντας 2 ενδιάμεσες κλάσεις αντί για 1. Χμ... γίνεται;
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  12-03-2006, 01:43 10586 σε απάντηση της 10585

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Μου φαίνεται αυτό το σενάριο είναι κατάλληλο για το Strategy Design Pattern.
    Ρίξε μια ματιά εδώ: http://www.dofactory.com/Patterns/PatternStrategy.aspx


    Vir prudens non contra ventum mingit
  •  12-03-2006, 02:03 10587 σε απάντηση της 10584

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    αυτο ειναι πονκεφαλος σαν κωδικας :P
    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  12-03-2006, 10:43 10588 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Sorry, αυτό ήταν για τον Mitsaras, σχετικά με αυτό που θέλει να κάνει
    Vir prudens non contra ventum mingit
  •  12-03-2006, 15:47 10590 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Gracias Kelman, θα του ρίξω μια ματιά.
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  21-03-2006, 17:16 10925 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    μπορεί να κάνει κάποιος το ακόλουθο στην c#;



    Public class bascls()

    {





    }

    Public class inhclas:bascls

    {







    }



    Public class inhclass2:inhclass

    {







    }




    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  22-03-2006, 16:42 10978 σε απάντηση της 10583

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    Σαφώς και μπορεί.



    Συγχώρεσέ με όμως για τις 2 ακόλουθες παρατηρήσεις ...



    1. Θα μπορούσες σε 3-4 λεπτά να το δοκιμάσεις και μόνος σου. Μπορεί τώρα που είσαι μόνος σου να είναι βολικό ( και θεμιτό ) να ρωτάς, αλλά όταν με το καλό βρεθείς σε μια ομάδα, ίσως κάποια στιγμή δείς οτι είναι σχεδόν ενοχλητικό να σε ρωτάνε πολύ απλά ερωτήματα των οποίων η λύση είναι θέμα 2 λεπτών ενασχόλησης.



    2. Μήπως τέτοια post ανήκουν στο "Πρώτα Βήματα"; νομίζω οτι το "Framework" μέρος του forum είναι για λίγο πιο "advanced" αναζητήσεις.



    Και πάλι σου ζητώ συγνώμμη που "στη λέω", αλλά αυτές οι δύο παρατηρήσεις μου έχουν έρθει στο μυαλό και απο άλλα posts σου εδώ.



    Πάντα φιλικά,

    Άγγελος
    Angel
    O:]
  •  22-03-2006, 17:30 10980 σε απάντηση της 10978

    Απ: Mπορεί κάποιος να κάνει inheritance με δυο βασικές κλάσεις;

    ασχολουμαι με λιγο προχωρημενο προγραμματισμο xml και τα παρομοια :P

    απλως δεν εχω ασχοληθει ποτε με την κληρονομικοτητα.
    εχω ακουσει χειροτερες ερωτησηεις απο αυτη :P

    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems