# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > VB.NET >  برنامه نویسی شی گرا (کلاس نویسی و..) با VB.net

## sanaz12345

سلام ب همه
از دوستان یه آموزش برنامه نویسی شی گرا با VB.net بزارید 
جستجو کردم اما مفید نبود
اگه امکان داره کلاس نویسی رو بیشتر توضیح داده باشه 
و اگه امکان هم داره مثال هم بزارید (مخصوصا کلاس نویسی رو)

ممنون :لبخند:

----------


## alimanam

با سلام

به این لینک سری بزنید فکر میکنم مشکلتون حل بشه .

موفــــــق باشید./

----------


## sanaz12345

سلام
از جوابتون ممنون
اما فایل شیگرایش رو قبلا تو یه جای دیگه دانلود کرده بودم
راستش ازش هیچی نفهمیدم
اگه میشه یه آموزش شیگرایی دیگه همراه با مثال برام بذارید
ممنون میشم

----------


## ROSTAM2

با سلام 
منظور شما از کلاس نویسی ساخت کلاس جهت ایجاد شئ component هست؟

----------


## sanaz12345

حقیقتش من از شی گرایی هیچی نمیدونم!
اما میخوام با شی گرا و مفهومش و اینکه اصلا به چه دردی میخوره آشنا بشم و میخوام بدونم شی گرا چه دردی و دوا میکنه!
وی بی رو بلدم اما شی گرایش رو اصلا بلد نیستم (نه کد نویسی و نه مفهموم شی گرایی رو نمیدونم)
برای همین یه مقاله ای جزوه ای چیزی در مورد شیگرا و یه سمپل خوب که بتونم متوجه بشم از شما درخواست دارم

ممنون

----------


## Hybrid

سلام ، 

داخل همون لینکی که دوست خوبمون دادن یک پی دی اف خیلی جالب در مورد برنامه نویسی شی گرا بود :

برنامه نویسی شئی گرایی در وی بی دات نت

موفق باشید./

----------


## sanaz12345

ن به این شکل نمیخوام یعنی ازش هیچی متوجه نشدم. نه خوب توضیح داده و مثالاش اصلا به درد نمیخوره
بیشتر درباره کلاس نویسی میخوام بدونم
مثلا رابطه بین Actorها و روابط ارث بری بین انها
رابطه بین کلاس ها
رابطه ارث بری بین کلاس ها
(( در کل پیاده سازی UML با زبان VB.net رو میخوام))

امیدوارم دوستان کمکم کنن :افسرده:

----------


## ROSTAM2

خلاصه : برنامه ای که با اشیاء سر و کار داره 
همونطور که می دونید هر شئ یه کلاس خاص داره شما هم می تونید برای اینکار یه پروژه جدید با انتخاب آیتم  Windows Forms Control Library برای ساختن شیء ایجاد کنید این نوع پروژه از یک شئ UserControl بهره منده که می تونید برای اون خصوصیت      
property ,Function,Subroutine, event, structure,enum
 و .... بسازید که هر کدوم عملی انجام می دن که شما می خواید مزیت شئ این هست که می شه در پروژه های مختلف اون رو استفاده کرد و روی UserControl اشیاء دیگری رو بکار گرفت که به اون نیاز دارید
یه پروژه گذاشتم واسه دانلود ببین بدردت می خوره  http://www.upitus.net/nfefjmu6d7kl

اینم نحوه استفاده از توابع اون 
	Dim Font_ As New Font(Font, FontStyle.Regular)
      
        
	ExplorerBar1.AddTask("Play List", "Play List Control Items", My.Resources.Close_1, My.Resources.Close_2)
        ExplorerBar1.AddTask("Control Media", "Media Controls Items")
        ExplorerBar1.AddTask("Other Places", "Go to Somewhere with one click")
        ExplorerBar1.AddTask("Control Panel Tools", "Visit Control Panel Tools with one Click", Font_, Color.Goldenrod)
        ExplorerBar1.AddTaskItem(0, "Add File", "Add File to Play List", My.Resources.App_05)
        ExplorerBar1.AddTaskItem(0, "Clear Play List", "Remove All Items from Play List", My.Resources.App_06)
        ExplorerBar1.AddTaskItem(1, "Play", "Play Selected Item", My.Resources.App_08)
        ExplorerBar1.AddTaskItem(1, "Pause", "Pause Media", My.Resources.App_09)
        ExplorerBar1.AddTaskItem(1, "Back", "Back Media File", My.Resources.App_09)
        ExplorerBar1.AddTaskItem(1, "Next", "Next Media File", My.Resources.App_09)
        ExplorerBar1.AddTaskItem(1, "Stop", "Stop Media", My.Resources.Icon_47)

        ExplorerBar1.AddTaskItem(2, "My Documents", "Go to my Documents place", My.Resources.Icon_127)
        ExplorerBar1.AddTaskItem(2, "My Pictures", "Go to my Pictures place", My.Resources.Icon_128)
        ExplorerBar1.AddTaskItem(2, "My Music", "Go to my Music place", My.Resources.Icon_129)
        ExplorerBar1.AddTaskItem(2, "My Videos", "Go to my videos place", My.Resources.Icon_130)

        ExplorerBar1.AddTaskItem(3, Explorer_Bar.ExplorerBar.DisplyItem.TextWithImage, "Add or Remove Programs", "Go to my Documents place", Me.Font, Color.BlueViolet)
        ExplorerBar1.AddTaskItem(3, "Display Settings", "Go to my Pictures place", My.Resources.Icon_128)
        ExplorerBar1.AddTaskItem(3, "Date and Time", "Go to my Music place", My.Resources.Icon_129)
        ExplorerBar1.AddTaskItem(3, "Sound Settings", "Go to my videos place", My.Resources.Icon_130)
        ExplorerBar1.AddTaskItem(3, "New Item", " Go to my videos place", My.Resources.Icon_130)
        ExplorerBar1.AddTaskItem(3, "Rostam Item", My.Resources.App_09)
        ExplorerBar1.AddTask(FlatStyle.Standard, "Abut Product...", "Product Information")
        
	Me.Refresh()

برای استفاده از ایونت اون هم اینطوری عمل کن 
Private Sub ExplorerBar1_TaskItemClick(ByVal index As Integer, ByVal Item As Integer) Handles ExplorerBar1.TaskItemClick
     
        Select Case index
            Case 0
                Select Case Item
                Case 0
            	 
		case 1
		
		case 2
		
		end select

	case 1
		Select Case Item
                Case 0
            	 
		case 1
		
		case 2
		
		end select
	case 2
		Select Case Item
                Case 0
            	 
		case 1
		
		case 2
		
		end select
	end select
End Sub

----------


## sanaz12345

مامان  :گریه: 
چرا کسی متوجه نمیشه
دست همتون درد نکنه
اما من هیچی بلد نیستم از شی گرا . یه چیزی بگید که از پایه برنامه نویسی شی گرا باشه
مثلا فرض کنید چند تا Actor داریم و میخوایم با یک کلاس و رابطه ارث بری این ها رو به هم وصل کنیم چه طوری باید کدشو بنویسیم
لطفا توضیح کامل + سمپل

خیلی ممنونم

----------


## فرید نجفلو

> اما من هیچی بلد نیستم از شی گرا . یه چیزی بگید که از پایه برنامه نویسی شی گرا باشه
> مثلا فرض کنید چند تا Actor داریم و میخوایم با یک کلاس و رابطه ارث بری این ها رو به هم وصل کنیم چه طوری باید کدشو بنویسیم
> لطفا توضیح کامل + سمپل


شما چطوری VB.NET رو یاد گرفتید که *هیچی* از کلاس و شیئ گرایی نمی دونید؟!
هر کتابی که خونده باشید به صفحه 200 -300 نرسیده کلاس ، توارث و ... رو توضیح می ده
حتما می دونید ولی اشکالاتی دارید!
باید شما بگید تا چه حد از توارث ، پراپرتی ها ، Attributi ها چند ریختی و ... می دونید!
کم یا زیاد هر چی می دونید بگید تا ما هم مجبور نباشیم(و نمی تونیم) از اول توضیح بدیم!




> مامان


چیزی برای گفتن ندارم :ناراحت:  :متعجب:

----------


## sanaz12345

سلام دوستان
از این که میخواید کمکم کنید خوشحالم میکنه.. :لبخند: 
 :لبخند: به نظرم اگه خودم یه سوال طرح کنم بهتر باشه :لبخند: 
مثلا فرض کنید میخوایم کد نویسی  کلاس ها و ارتباط بین این کلاس ها رو بنویسیم
چطور باید بنویسیم؟
لطفا توضیح (document) رو همراه با کد بذارید :لبخند گشاده!:  چون نمیفهمم!
(این یک نمونه کوچک Use case - UML)

ممنون از همه

----------


## ROSTAM2

راستشو بخوا ی من دقیق متوجه نشدم چطور ارتباطی میان کلاسها مد نظر شماست؟؟؟!

----------


## sanaz12345

> راستشو بخوا ی من دقیق متوجه نشدم چطور ارتباطی میان کلاسها مد نظر شماست؟؟؟!


کلا کلاس نویسی و نحوه ارتباط بین کلاس ها رو بلد نیستم
مثلا دقت کنید 

کلاس اول
شی =                   Company(شرکت)

کلاس دوم
شی=                  Employee (کارمند)

حالا میخوام این دوتا کلاس رو بنویسم و بهم دیگه ارتباط بدم




> از دستور Structure توی کلاس استفاده کن اگه می خوایی به هم مرتبط باشند
> توی یه کلاس می تونی از تعداد زیادی Structure استفاده بکنی


ای کیو من پایینه و دیر متوجه میشم. اگه میشه مثال بزنید و تو کاربرد بهم نشون بدید.

تروخدا . من باید یاد بگیرم!!!!!!!!!!!! :گریه:  :گریه:

----------


## ROSTAM2

Employee

Public Class Employee
    Public Name, Family, Addres, Phone As String
End Class

Company 

Public Class Company
    Public CompanyEmployees As New List(Of Employee)
End Class

اگه یه لیست ویو داشته باشیم با 4 ستون پر از اطلاعات 
نام و فامیل و تلفن و آدرس اینطور مقدار میدیم به متغیر کلاسمون
این متغیر که از نوع کلاسمون در قسمت Declarations تعریف می کنیم
Dim CompanyInfo As New Company

اینا رو تو یک Event از کلیک یک کلید برای وارد کردن اطلاعات لیست
 
        Dim itm As New Employee
        CompanyInfo.CompanyEmployees.Clear()
        With listView1
            For i = 0 To .Items.Count - 1
                itm.Name = .Items(i).Text
                itm.Family = .Items(i).SubItems(1).Text
                itm.Phone = .Items(i).SubItems(2).Text
                itm.Addres = .Items(i).SubItems(3).Text
                CompanyInfo.CompanyEmployees.Add(itm)
            Next
        End With

و این رو برای فرا خوانی اطلاعات به کار می گیریم

  For i = 0 To CompanyInfo.CompanyEmployees.Count - 1
            With listView1.Items.Add(CompanyInfo.CompanyEmployees.I  tem(i).Name)
                .SubItems.Add(CompanyInfo.CompanyEmployees.Item(i)  .Family)
                .SubItems.Add(CompanyInfo.CompanyEmployees.Item(i)  .Phone)
                .SubItems.Add(CompanyInfo.CompanyEmployees.Item(i)  .Addres)
            End With
        Next
می تونی امتحان کنی ببین درست کار میکنه یا نه

----------


## sanaz12345

خیلی عالی :تشویق: 
اما اگه میشه درباره کلاس دوم بیشتر توضیح بدید

----------


## ROSTAM2

Public Class List(Of T)
          Inherits System.Object
     Member of System.Collections.Generic
Summary:
Represents a strongly typed list of objects that can be accessed by index. Provides methods to search, sort, and manipulate lists

يک ليست متغير از اطلاعات با نوع داده اي که شما مي خوايد
که مي تونيد به اون اطلاعات اضافه کنيد وويرايش کنيد حذف کنيد سورت کنيد
داخل اون جستجو کنيد و ...

System.Collections.Generic.List(Of T)

T هر نوع داده یا کلاسی که می خوای

اطلاعات در مورد متدها و خصوصيت هاش مي خوايي 
Object Browser

----------


## hakim22

حتی String ها در وی بی دات نت به صورت یک شی هستند و نه یک نوع و کلی متد ، خصوصیت دارند ، از هر ده خطی که در وی بی دات نت برنامه نویسی میشه 9 تاش مربوط به یک کلاس میشه و از یک استفاده میشه ، آموزشش و اطلاحاتش هم در حوصله و فضای یک تاپیک نیست ، اینهمه کتابهای مرجع فارسی با مثال های فراوان ، یکیش رو تهیه کنید و مطالعه بفرمایید دوست عزیز.

----------


## sanaz12345

از دوستمون که کد گذاشتن تشکر میکنم :لبخند: 
ولی اما



> اینهمه کتابهای مرجع فارسی با مثال های فراوان ، یکیش رو تهیه کنید و مطالعه بفرمایید دوست عزیز.


اگه امکان داره 
یه کتابی کهع مرجع UML که کدنویسیش(کلاس نویسیش) VB.net باشه رو بهم معرفی کنید
توی کتابی که معرفی میکنید
نمودار كلاس (Class Diagram) با کد نویسی VB.net
نموداراشیاء (Object Diagram) با کد نویسی VB.net
تا تهیه کنم و مطالعه بفرمایم :لبخند گشاده!:

----------


## sanaz12345

:گریه:   چرا هیچ کس به من توجه نمینمویه؟؟  :گریه: 
لطفا کمک کنید دوستان!!

----------


## Hybrid

> چرا هیچ کس به من توجه نمینمویه؟؟ 
> لطفا کمک کنید دوستان!!


دوست عزیز ، سلام ،

دلیله اینکه کسی به شما کمک نمیکنه اینه که کسی وقت نداره همین!!! شما میخواین کل کلاس نویسی رو یاد بگیرین که در این تاپیک نمیگنجه آموزشش  ، یک پی دی اف بهتون معرفی کردم که گفتین راحت نیست ! 

خوب شما اول باید اونو بخونین بعد هر جایی که مشکل داشتین بپرسین ، اگه هم منابع دیگری میخواین داخل گوگل جستجو کنین تا کلی مطلب آموزشی چه به زبان فارسی و چه لاتین واستون بیاره.

امیدوارم از حرف های  من ناراحت نشده باشین.

موفق باشید./

----------


## sanaz12345

> چرا به خودت سخت گرفتی اونقدرا هم که فکر میکنی سخت نیست تا حالا با class builder vb6 کلاس ساختی؟ اگه نه که یه امتحانی بکن ...


نه با اون کلاس نساختم. حقیقت من فقط سی شارپ و دات نت بلدم. و اصلا 6 کار نکردم




> می تونی با اون کلاسها رو به هم مرتبط کنی و براشون هر چقدر دلت می خواد متد و خصوصیت و .... تعریف کنی


 این تایپیک رو پیدا کردم
https://barnamenevis.org/showthread.p...A7%D8%AA%DB%8C
اما فقط uml گفته و هیچ مثالی با vb.net نزده




> دلیله اینکه کسی به شما کمک نمیکنه اینه که کسی وقت نداره همین!!!


 :ناراحت: 



> شما میخواین کل کلاس نویسی رو یاد بگیرین که در این تاپیک نمیگنجه آموزشش ،


هیچ کی منو دوست نداره :گریه: 



> یک پی دی اف بهتون معرفی کردم که گفتین راحت نیست !


اخه اون پی دی افی که توی پست 6 گذاشتید  اصلا هیچ ربطی به UML نداره. اگه میشه پی دی افی بزارید که uml باشه و مثال های کلاس نویسیش رو با VB.net نوشته باشه. (من همچین چیزی تو اینترنت پیدا نکردم) 



> امیدوارم از حرف های من ناراحت نشده باشین.


از اینکه سعی دارید کمکم کنید متشکرم :لبخند:  ولی بازم همچنان منتظر دوستانم!

----------


## mansourii

اگه میخوای کلاس دیاگرام رو همراه با مثال یاد بگیری (اگه منظورت اینه) یسری به این ادرس بزن!
http://www.codeproject.com/Articles/...in-VS-NET-2005

اگه منظورت این نیست سوالت رو واضح بگو. چون فهم سوال نصف جوابه!

----------


## lastmory

سلام ببین این بدردت میخوره ؟؟؟؟  :لبخند گشاده!: 
http://mihandownload.com/2012/03/amo...dar-21rooz.php

----------


## sanaz12345

> اگه میخوای کلاس دیاگرام رو همراه با مثال یاد بگیری (اگه منظورت اینه) یسری به این ادرس بزن!
> http://www.codeproject.com/Articles/...in-VS-NET-2005
> 
> اگه منظورت این نیست سوالت رو واضح بگو. چون فهم سوال نصف جوابه!


دقیقا منظورم همین بود
اون سایتم خیلی مفید بود :لبخند:  
اما
من نمیدونم چطوری باید از روی کلاس وراثت رو انجام داد
GET و SET رو نفهمیدم
اگه میشه یه مثال برام بزارید تا دانلود کنم و گت و ست رو هم توضیح بدید




> سلام ببین این بدردت میخوره ؟؟؟؟ 
> http://mihandownload.com/2012/03/amo...dar-21rooz.php


دست شما درد نکنه
رمزی که تو سایت گفته معتبر نیست . ولی همین رو یه سایت دیگه ای داشت و دیدم
اما با VB.net نبود با C++‎ و java بود :ناراحت: 
دستتون درد نکنه وراثت و گت و ست رو توضیح بدید!
از همه دوستان ممنونم :لبخند:

----------


## lastmory

زبان اصلی اگه میخونی

http://developerpro.mihanblog.com/post/category/2

----------


## sanaz12345

> زبان اصلی اگه میخونی
> 
> http://developerpro.mihanblog.com/post/category/2


مطمئنید که درباره کلاس دیاگرام نوشته؟ :متفکر: 
خودتون مطالعه کردید؟

----------


## sanaz12345

هلپ می!
 :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:

----------


## sepehr.net

سلام

یه کتاب داشتم ، امیدوارم مفید باشه

----------


## alimanam

با سلام

کلاس نویسی علی ماشاا.. خودش یه کتاب 1000 هم میتونه باشه ( با اقراق ! ) همون طوری که دوستان گفتن شما بهتره کمی بیشتر وقت بزارین و تلاش مضاعف کنین و هرکجا که براتون نامفهوم بود سوال کنین نه این یه سوال کلی بپرسین کسی هم ندونه ( نمیتونه ) کل مباحث رو براتون توضیح بده .

و اما در مورد سوالی که در مورد Get و Set و چطوری از روی کلاس یه نمونه بسازین رو کمی باز میکنم امیدوارم که متوجه بشین .

ببین دوست عزیز شما وقتی یک کلاس مینویسی حالا این کلاس میخواد یک کنترل باشه یا یه رفرنس که متشکل شده از چندتا فانکشن و متد و ... هنگامی که میخواین از این کلاس در یک قسمت از برنامه استفاده خاصی بکنین باید یک نمونه بسازین که به صورت کلی اینجوری نوشته میشه :

Private objName As New ReferenceName.className

که در اینجا objName نامی هست که به این نمونه اختصاص دادیم .
ReferenceName نام رفرنس یا کنترلی هست که نوشتیم .
classname نام کلاسی هست که ما میخوایم ازش نمونه بسازیم .

شما میتونی در ابتدای پروژه یا برنامه رفرنس مورد نظر رو اضافه (Add Reference ) کنی و بدون اینکه نام رفرنس رو ذکر کنی فقط نام کلاس مربوطه رو بنویسی یعنی کد بالا اینجوری تغییر کنه :

Imports ReferenceName

Private objName As New ClassName

خوب تا اینجا ما تونستیم از کلاسی که نوشتیم یک نمونه بسازیم . و اما توضیحات تکمیلی :

شما میتونی در کلاسی که نوشتی جوری کدنویسی بکنی که هنگامی که قراره یک نمونه از این کلاس ارث بری بشه بعضی از پارامترهای مورد نظر خودت رو هم مقدار دهی کنی , چطوری ؟

کافیه در کلاسی که مینویسی کد زیر رو اضافه کنی :

    Public Sub New(ByVal parameter1 As String, ByVal parameter2 As Int32)
        Property1 = parameter1
        Property2 = parameter2
    End Sub

که در اینجا Property1 و Property2 بوسیله parameter1 و parameter2 مقدار دهی شدن ( بوسیله Function New ) . حالا به فرض استفاده از کد ذکر شده در کلاس مورد نظر کدهای مطرح شده در قسمت بالا به این صورت قابل تعریف هستن : ( به فرض اینکه شما 2 تا Property در کلاس نوشته باشی به اسم MyName و Age 


Private obj1 As New className("Ali dakhilzadeh", 22)
)

در کد بالا ما مقادیر پروپرتی های MyName و Age رو هنگام ساخت یک Instance یا نمونه از کلاس className مقدار دهی کردیم !

خوب حالا که تا قسمتی بحث ارث بری از کلاس روشن شد بریم به سوال دوم شما که Set و Get باشه :

ببین دوست عزیز ست و جت به صورت معمول هنگامی استفاده میشن که بخوایم یک پروپرتی ( Property ) ایجاد کنیم ( برای کلاس مورد نظر خودمون ) اگه این پروپرتی فقط خواندنی باشه دیگه نیازی به Set نداره چون فقط خواندنی هست و کاربر نباید و نمیتونه مقدار این پروپرتی رو تغییر بده این نوع پروپرتی ها به صورت معمول برای نمایش اطلاعات یک رخداد خاص استفاده میشن . برای مثال شما Progress یک نخ رو در نظر بگیرین شما مثلا وقتی دارین یک فایل رو دانلود میکنین احتمالا یک Progressbar دارین که درصد دانلود شدن اون فایل رو بهتون نمایش میده ! مقدار این درصد به صورت فقط خواندنی هست یعنی اینکه کاربر نباید و نمیتونه درصد دانلود شدن اون فایل رو دستکاری کنه چون دسترسی به منابع اون نداره . شما این کد رو در نظر بگیرین :


    Public ReadOnly Property ClassOwner() As String
        Get
            Return "Ali Dakhilzadeh"
        End Get
    End Property


در این قطعه از کد با توجه به نوع پروپرتی که از نوع فقط خواندنی ( ReadOnly ) بود فقط از Get استفاده کردیم .

و اما Set :

برای اینکه بتونیم مقدار یک Property رو تغییر بدیم باید کد بالا رو به صورت زیر تغییر بدیم :


    Private _classOwner As String = String.Empty
    Public Property ClassOwner() As String
        Get
            Return _classOwner
        End Get
        Set(ByVal value As String)
            _classOwner = value
        End Set
    End Property


دیگه نیازی به توضیح بیشتر حس نمیشه که Value منظور همان مقداری هست که ما بعداً میتونیم مقداردهی اش کنیم .

من یک سورس کوچک با توجه به این موارد توضیح داده شده برای شما نوشتم میتونین تمرین کنین و اگر سوالی بود بگین دوستان دیگر بهتر و بیشتر راهنمایی میکنن .

موفـــــق باشید./

----------


## sanaz12345

سلام و ممنون از پاسخ خوبتون
اما یه چیزی!




> Private obj1 As New className("Ali dakhilzadeh", 22)


این کد یعنی اینکه شما از کلاسی که قبلا نوشته بودید ارث بردید؟  به این کار میگن ارث بری از کلاس؟؟

----------


## Hybrid

با اجازه دوست بسیار عزیز Alimanam

اون کدی که رو که گذاشتین یک Instance یا نمونه از اون کلاس رو میسازه ، و امکان استفاده از خصوصیات و متد های کلاس رو به وسیله ی اون شی امکان پذیر میکنه

----------


## alimanam

با سلام و تبریک سال نو خورشیدی

با عرض ادب و احترام به دوست بسیار خوبم من هم چند خط به توضیحات *VbBoss* اضافه میکنم .

ببین دوست عزیز خانم *Sanaz* شما در سوالی که داشتین که آیا با این کد کلاسی که نوشتیم رو به ارث بردیم یا نه ؟ باید عرض کنم بله دقیقاً شما با ایجاد یک Instance یا نمونه از این کلاس در واقع یک شیء از کلاس پدر به ارث بردین یعنی اینکه به تمامی خصوصیات و متدها و ویژگیهای کلاس پدر دسترسی خواهین داشت . ارث بری که در برنامه نویسی شیء گرایی بیشتر نمود رو پیدا کرده خودش یه بحث مفصله و همونگونه که عرض کردم در یک خط و 20 خط نمیشه توضیحش داد و نیاز به وقت بیشتر داره شما بهتره در این مورد چندتا فایل pdf یا مقاله بخونین خیلی روان و سلیس توضیح داده حتما هم نیاز نیست به زبان خاصی باشه به هرزبانی که باشه *تقریبا* مباحثش شبیه به هم دیگه است .

وراثت خودش به 2 مبحث مجزا تفکیک میشه :

1- وراثت منفرد یا *Single Inheritance*
2- وراثت چندگانه یا *Multiple Inheritance**


برای اطلاعات بیشتر سرچ سرچ سرچ . باز هم خاطر نشان میکنم نیاز نیست حتما حتما به زبان VB.NET باشه اکثرا مطالبشون شبیه به هم دیگه است .
*
موفـــــق باشید./*
*

----------

