' Visual Basic 2008 9.0 .NET Examples - Containment - Object Oriented Programming : Class Person Private m_Name As String Public Property Name() As String Get Return m_Name End Get Set(ByVal value As String) m_Name = value End Set End Property Private m_Address As Address Public Property Address() As Address Get Address = m_Address End Get Set(ByVal value As Address) m_Address = value End Set End Property End Class Class Address Private m_Street As String Public Property Street() As String Get Street = m_Street End Get Set(ByVal value As String) m_Street = value End Set End Property Private m_Number As String Public Property Number() As String Get Number = m_Number End Get Set(ByVal value As String) m_Number = value End Set End Property Private m_ZipCode As String Public Property ZipCode() As String Get ZipCode = m_ZipCode End Get Set(ByVal value As String) m_ZipCode = value End Set End Property Private m_City As String Public Property City() As String Get City = m_City End Get Set(ByVal value As String) m_City = value End Set End Property End Class Module Client1 Sub Main() Dim address1 As Address = New Address address1.Street = "Royal Avenue" address1.Number = "10" address1.ZipCode = "90210" address1.City = "Beverly Hills" ' Dim person1 As Person = New Person person1.Name = "John" person1.Address = address1 ' Print(person1) ' Console.ReadLine() End Sub Sub Print(ByVal person As Person) Console.WriteLine(person.Name) If person.Address IsNot Nothing Then With person.Address Console.WriteLine(.Number & ", " & .Street) Console.WriteLine(.City & " " & .ZipCode) End With End If End Sub End Module ' Visit www.studyvb.com for more examples. Copyright 2003-2008 De Wolf.