The concept of Object Oriented Programming dictates that we create a class to represent each object in our application.

For my application, the object is an Address.  For yours, it will be the particular item you are maintaining a collection of.

An object (noun) is simply a code representation of person, place, thing, process, etc.  An object has:

properties (attributes): describes the object (adjectives)
methods: what the object can do or react to (verbs)

For our object, we will use it only to store properties.  The properties of my Address object are:

AddressID
FirstName
LastName
Address1
Address2
City
State
ZipCode

All properties are declared as private class-level variables.

To make the property readable, you use a Property Get method.  This allows a user of the object to retrieve the value for a particular property.

To make the property writable, you use a Property Let method.  This allows a user of the object to change the value for a particular property.

You should NEVER make a property public.  Doing so may cause disastrous results, because the user may set the property to an invalid value. This, in turn, will cause the application to mis-behave.  Make the property private, then use the Property Let to include code to validate the value being set.

Here is the source code for my  Address.cls.