<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Πρώτα Βήματα - Αρχές προγραμματισμού</title><link>https://www.dotnetzone.gr:443/cs/forums/72/ShowForum.aspx</link><description>Αναρωτιέστε τι σημαίνει object; Class; Inheritance; Design pattern; Την απάντηση μπορείτε να την βρείτε εδώ!</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: ερωτησεις γηρω απο inheritance</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/11771.aspx</link><pubDate>Tue, 11 Apr 2006 15:57:29 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:11771</guid><dc:creator>Νατάσα Μανουσοπούλου</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/11771.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=11771</wfw:commentRss><description>&lt;P&gt;Για να καλείται η υλοποίηση της derived κλάσης όταν έχεις reference στην base κλάση πρέπει η μέθοδός σου να έχει δηλωθεί ως virtual. Π.χ.&lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;class&lt;/span&gt; baseClass&lt;br /&gt;{&lt;br /&gt;  &lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;public&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;virtual&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;string&lt;/span&gt; getVersion();&lt;br /&gt;}&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;class&lt;/span&gt; childClass : baseClass&lt;br /&gt;{&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;public&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;override&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;string&lt;/span&gt; getVersion()&lt;br /&gt;{&lt;br /&gt;  &lt;span style="color: Green;background-color: Transparent;font-family: Courier New;font-size: 11px;font-weight: normal;"&gt;// Implementation&lt;/span&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;BTW, το base είναι reserved word στη C#.&lt;/P&gt;</description></item><item><title>Απ: ερωτησεις γηρω απο inheritance</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/11758.aspx</link><pubDate>Tue, 11 Apr 2006 02:02:49 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:11758</guid><dc:creator>angarato_surion</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/11758.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=11758</wfw:commentRss><description>το δευτερό το εφτιαξά αλλα για το πρώτο  δεν τα καταφερα γιατι λεει μια exception&lt;br /&gt;
&lt;br /&gt;
Error	1	'Hydrobase.hydrobaseADO.SendtoDataGrid(System.Windows.Forms.DataGridView, System.Data.DataSet, string, int)' cannot be sealed because it is not an override	D:\Τα_Προγραμματά_μου\.Net\Hydrobase\Hydrobase\hydrobaseADO.cs	24	29	Hydrobase&lt;br /&gt;
&lt;br /&gt;
αυτο το βγαζει σε όλλες τις μεθοδους που θελω να κανω sealed.&lt;br /&gt;
&lt;br /&gt;
επισης η κληρονομικοτητα την κανω ως εξης . &lt;br /&gt;
&lt;br /&gt;
child:childbase&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
childbase:base&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class plugin:child&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
οι μεθοδοι ππυ θελω να γινουν sealed ειναι στην childbase.&lt;br /&gt;
&lt;br /&gt;</description></item><item><title>Απ: ερωτησεις γηρω απο inheritance</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/11755.aspx</link><pubDate>Mon, 10 Apr 2006 23:45:16 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:11755</guid><dc:creator>SValsamis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/11755.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=11755</wfw:commentRss><description>Αντικατέστησε το&lt;br /&gt;
&lt;br /&gt;
 Ekdo = Assembly.GetExecutingAssembly().GetName().Version.ToString();&lt;br /&gt;
&lt;br /&gt;
με&lt;br /&gt;
&lt;br /&gt;
 Ekdo = this.getType.Assembly.GetName().Version.ToString();&lt;br /&gt;
&lt;br /&gt;
ΥΓ:&lt;br /&gt;
&lt;br /&gt;
H GetExcecutingAssembly επιστρέφει το Assembly που έχει φορτωθεί στο Application Domain (πιθανώς το WindowsApplication) και όχι το assembly που περιέχει το Class Base.</description></item><item><title>Απ: ερωτησεις γηρω απο inheritance</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/11746.aspx</link><pubDate>Mon, 10 Apr 2006 17:55:27 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:11746</guid><dc:creator>anjelinio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/11746.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=11746</wfw:commentRss><description>Το πώς θα αποφύγεις την κλήση της getVersion απο τη base κλάσση, είναι μια "πονεμένη" ιστορία. Μπορείς να μαρκάρεις τη base method ως abstract και να μη δώσεις εκεί υλοποίηση, ή να την κάνεις virtual και να μπορεί να γίνει overriden σπο subclasses.&lt;br /&gt;
&lt;br /&gt;
To να κόψεις τη δυνατότητα να γίνει override μια μέθοδος, είναι πιο απλό. Απλώς μάρκαρέ τη ως sealed.</description></item><item><title>ερωτησεις γηρω απο inheritance</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/11726.aspx</link><pubDate>Sun, 09 Apr 2006 21:26:27 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:11726</guid><dc:creator>angarato_surion</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/11726.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=72&amp;PostID=11726</wfw:commentRss><description>γεια σας&amp;nbsp; θα ηθελα να ρωτησω κατι .&lt;br&gt;class base&lt;br&gt;{&lt;br&gt;public voidgetVersion();&lt;br&gt;&lt;br&gt;}&lt;br&gt;&lt;br&gt;class child:base&lt;br&gt;{&lt;br&gt;public void getVersion(){&lt;br&gt;try&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string Ekdo = null;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ekdo = Assembly.GetExecutingAssembly().GetName().Version.ToString();&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Ekdo;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception e)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;}&lt;br&gt;&lt;br&gt;}&lt;br&gt;&lt;br&gt;πως αναγκαζουμε την εκτελεση της getVersion απο την child κλαση και οχι την εκτελεση της getVersion απο την base κλάση. &lt;br&gt;&lt;br&gt;γραφω ενα SDK για μια βιβλιοθήκη μου και θελω να βρησκω την εκδοση καθε plugin που εχει φορτωθεί&amp;nbsp; αλλα αντι για την εκδοση του plugin μου δινει την εκδοση του SDK. πως το διορθωνω αυτο;&lt;br&gt;&lt;br&gt;επισης πως κανουμε μια μεθοδο της&amp;nbsp; κλάσης base να μην μπορει να αλλάξει απο κάποιο Plugin;</description></item></channel></rss>