PDA

View Full Version : چند تا سوال ابتدایی



sgb110
شنبه 05 خرداد 1386, 22:56 عصر
سلام
دوستان اگه ممکنه در مورد مفهوم اینترفیس منو راهنمایی کنید

در ضمن overloading با چندشکلی تفاوت داره اگه داره چی هست ؟

:اشتباه: :اشتباه: :خجالت: :خجالت: :اشتباه: :اشتباه:

kourosh_ag
شنبه 05 خرداد 1386, 23:19 عصر
برنامه ها از سطوح مختلفی از نظر برنامه نویسی تشکیل شده اند که در سطح آخر که شامل
شکل ظاهری برنامه است و توسط کاربران استفاده میشه در اصطلاح USER INTERFACE گفته میشه.

azmoodeh
شنبه 05 خرداد 1386, 23:59 عصر
Interface یک تعریف است که ما از یک کلاس انجام می دهیم (تعریف نه پیاده سازی ) تا کلاسهایی که از این این Interface ارث می برند این قواعد را رعایت کنند.
مثلا این کلاس بایستی چه متدهایی داشته باشد و مثلا این متد ها چه آرگومانهایی داشته باشند .
PolyMorphism یا چند ریختی تا آنجایی که من می دانم در واقع مفهوم استفاده یک متد پیاد سازی شده ی کلاس پدر از طریق آبجکت های فرزندان کلاسهای ارث برده شده از این کلاس می باشد.
ولی Overloading در واقع تعریف یک متد با امضاهای متفاوت می باشد . مثلا یک متد با نام A یک رشته را به عنوان ورودی بگیرد و دیگری هم با نام A یک Integer را به عنوان آرگومان بگیرد

موفق باشید

sgb110
یک شنبه 06 خرداد 1386, 00:09 صبح
خیلی ممنون
اما می شه یکم بیشتر توضیح بدید
من هنوز نفهمیدم اینترفیس چیه
در ضمن تو چند جا دیدم که این تعریفی که شما از overloading کردید رو برای چند شکلی بکار برده
من که حسابی گیج شدم

azmoodeh
یک شنبه 06 خرداد 1386, 00:36 صبح
در مورد چند ریختی
Public Class Animal
Private Sub A()
MsgBox(“From Animal Class”)
End Sub
End Class

Public Class Cow Inherits Animal
Private Sub B()
MsgBox(“From Cow Class”)
End Sub
End Class

…………..
Dim k as new Animal()
Dim h as new Cow()

k.A() --- Correct
h.A() --- Correct
h.B() --- Correct
k.B() --- Worst


=================
OverLoadin


Public Class Person
Public name , Family as String
.
.
.
Public Sub New()
Name = “John”
Family=”Smith”
End Sub
Public Sub New(_name as String)
Name=_name
Family=”Smith”
End Sub
Public Sub New(_name as String,_Family as String )
Name=_name
Family=_Family
End Sub
.
.
.
End Class

maroot
یک شنبه 06 خرداد 1386, 00:46 صبح
Interface یعنی رابط حالا رابط بین کاربر (که معمولا استفاده میشه) و یا رابط با یک برنامه دیگر یا سرور و یا هر چیز دیگه ای.
مثلا User interface یا رابط کاربری، همین فرمهایی که شما طراحی می کنید تا کاربر با استفاده از اون (از Button, TextBox و ....) با برنامه و کدهای شما ارتباط برقرار کنه، درخواستش رو بگه و شما پیام مناسب رو از طریق اون به کاربر بدید. به همین نسبت interface های دیگه رو خودت برو جلو!!!

sgb110
سه شنبه 08 خرداد 1386, 23:40 عصر
سپاس گذارم
اما:
این کدی که شما (azmoodeh (http://barnamenevis.org/forum/member.php?u=16315) vbmenu_register("postmenu_344804", true); ) در مورد چند ریختی نوشتید با ارث بری چه تفاوت هایی داره؟

eyes_shut_number1
چهارشنبه 09 خرداد 1386, 00:23 صبح
ببین شما در اور لودینگ میای مثلا برای 1 تابع یا رویه ایعمال میکنی
یعنی چی؟ یعنی اینکه 2 تا کلاس که اسمهاشون مثل همه رو درست میکنی ولی آرگمانهاشون فرق دارا
حالا اگر اونارو فراخوانی کنی بسته به پارامترهایی که میفرستی تابه مورد نظر عمل میکنه

GUI:Graphic User Interface
همون ظاهر فرمته

sgb110
چهارشنبه 09 خرداد 1386, 00:31 صبح
مرسی
با مفهوم اورلودینگ آشنا شدم
حالا سوالم اینه که با توجه یه کد زیر


Public Class Animal
Private Sub A()
MsgBox(“From Animal Class”)
End Sub
End Class

Public Class Cow Inherits Animal
Private Sub B()
MsgBox(“From Cow Class”)
End Sub
End Class

…………..
Dim k as new Animal()
Dim h as new Cow()

k.A() --- Correct
h.A() --- Correct
h.B() --- Correct
k.B() --- Worst


چه فرقی بین چندریختی با وراثت وجود داره؟

eyes_shut_number1
چهارشنبه 09 خرداد 1386, 00:46 صبح
در ضمن overloading با چندشکلی تفاوت داره اگه داره چی هست ؟

:اشتباه: :اشتباه: :خجالت: :خجالت: :اشتباه: :اشتباه:
ببین کد رو ول کن مفهوم رو بگیر
توی اینهریتنس(وراثت) زیر کلاس ها عین اون داده ها و متد های کلاس پایه رو به ارث میبرن ولی در پلی مرفیسم نهادی مثل متغیر.تابع.شی معانی یا کاربرد های مختلفی دارد
اینم بگم خیالت ر احت شه
توابع هم نام (Overloading) نوعی چند ریختی هستند (توی تعریف بالا قرمز رو ببین)
منبع کتاب جعفر نژاد شک نکن :چشمک: