تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] توريث خصائص كلاس لاخر
#1
السلام عليكم
انشاءت كلاس جديد وليكن اسمه Cls_ali
وبداخله مجموعه من الخصائص 
 ثم انشاءت منه متغير 
dim new_cls as cls_ali
ثم قمت بساناد قيم الي كل الخصائص الموجوده بالمتغير new_cls 
الان اريد انشاء متغير جديداسمه new_cls_2 يرث كل خصائص المتغير new_cls 
كيف يتم ذلك
الرد }}}
تم الشكر بواسطة:
#2
في الكلاس الأصلي implement ICloneable interface
الرد }}}
تم الشكر بواسطة:
#3
السلام عليكم

اطلع على هذا الكود
كود :
Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim new_cls As New Cls_ali
        new_cls.theName = "ali"

        Dim new_cls_2 As Cls_ali = new_cls
        MsgBox(new_cls_2.theName)

    End Sub

End Class


Class Cls_ali

    Property theName As String

End Class
الرد }}}
تم الشكر بواسطة: ali.alfoly
#4
الكود التالي يوضح لك بعضا من الأفكار في كيفية كتابة الكلاس بشكل بسيط

PHP كود :
Public Class AliClass
    Implements ICloneable

    Public Property Text 
As String

    Public 
Function Clone() As Object Implements ICloneable.Clone
 
       Return Me.CreateDeepCopy(CreateShallowCopy())
 
   End Function

 
   Friend Function CreateDeepCopy(current As AliClass) As AliClass
        Return current
    End 
Function

 
   Friend Function CreateShallowCopy() As AliClass
        Return CType
(Me.MemberwiseClone(), AliClass)
 
   End Function

End Class 


الإستخدام

هناك أساليب كثيرة لإستخدام الكلاس الان
و الكود التالي يوضح بعضا منها

PHP كود :
Public Class Form1
    Private Sub Form1_Load
(sender As ObjectAs EventArgsHandles MyBase.Load
        Dim c1 
As New AliClass
        c1
.Text "Any Name"

 
       'Dim c2 As AliClass = c1
        '
Me.Text c2.Text

        Dim c2 
As AliClass Nothing
        If TypeOf c1 Is ICloneable Then
            c2 
CType((CType(c1ICloneable)).Clone(), AliClass)

 
       End If

 
       Me.Text c2.Text

        
' or
        c2.Text = ""
        Dim c3 As AliClass = c2.Clone
        Me.Text = c3.Text

    End Sub
End Class 
الرد }}}
تم الشكر بواسطة: ali.alfoly
#5
جزاك الله خيرا (مساعدة) ولاكن في طريقتك يتم الاشارة فقط الي العنصر الاساسي new_cls واي تغير يتم علي new_cls ستلاحظ انه ايضا سيتم علي new_cls_2 لان في الحقيقة المتغير new_cls_2 ليس متغير منفرد بنفسه له خصائصه الخاصة بل في حالتك هذه هو فقط يشير الي new_cls
==============================
جزاك الله خيرا استاذ (silverlight) بالفعل هذا ما كنت اريد تعلمه مع اني بحثت بالانترنت ولم اعثر علي مرادي الا بعد قراءت رد حضرتك ومفتاح القصة كلها يكمن في Clone ههههه فعلا انتا استاذ
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم