John W. Colby
jwcolby at colbyconsulting.com
Tue Mar 16 10:51:14 CST 2004
Ryan, I can't help you with Implements because, in the stuff that I have been doing, I can't find a use for it. It seems to be a method of declaring that a specific object belongs to a higher level class of objects, ad allow you to dimension that object as that higher level object. In other words, you define a class with PUBLIC variables (generally considered a no-no) and a bunch of method and property STUBS. Once you have done that you create other classes that "implements" the parent class. It appears that the parent class' public variables magically become private in the class that implements the parent object. So from that perspective it would be useful (If I could figure out how to do it) as a means of defining a set of variables so that I don't have to define them again in other similar objects. The methods in the "parent" class have no code in them. They are just an empty declaration with a name and the parameters (with their type) that you expect to be using in this parent object. So... AFAICT you have managed true inheritance for a small set of variables and defined that you will provide a small set of methods. I am quite sure that this is useful to some people. It seems that the argument is that you now can dimension your object as an instance of the parent object and have early binding, able to see all of the properties defined in that parent object etc. What isn't clear (since I haven't ever used them) is that whether I can also see all of my own custom properties not defined in the parent object using early binding. If so then using this stuff would at least have a use to me. OOP and what is called "implementation inheritance" means that you take a parent class and "inherit" all of the code and variables in that parent. If the parent is a dog, and that parent class has a bark method, I can inherit dog and not write a line of code have a barking dog. I can now add "dance" and I now have a dancing barking dog, but all I had to do is write the dance method. I have inherited the whole kit and caboodle including the implementation of existing code in the parent. Remember that Access' version has no code at all in that parent object because it can't be inherited by the child object. There are others on the list that actually use this stuff, at least out in VB. It would be nice if they could write a demo (in Access) that shows us how this stuff all works, but no one has ever offered to do that. I don't know how so I can't do it for you. 8-( John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of rsmethurst at uk.ey.com Sent: Tuesday, March 16, 2004 11:06 AM To: Access Developers discussion and problem solving Subject: RE: [AccessD] Framework Discussion - Implements Hi All, In light of all the mails about classes, frameworks and implementation etc. (most of which I am finding very interesting). Could someone explain to me the difference between the 'Implements' statement and how this is differs from inheritance. Thanks Ryan This e-mail and any attachment are confidential and contain proprietary information, some or all of which may be legally privileged. It is intended solely for the use of the individual or entity to which it is addressed. If you are not the intended recipient, please notify the author immediately by telephone or by replying to this e-mail, and then delete all copies of the e-mail on your system. If you are not the intended recipient, you must not use, disclose, distribute, copy, print or rely on this e-mail. Whilst we have taken reasonable precautions to ensure that this e-mail and any attachment has been checked for viruses, we cannot guarantee that they are virus free and we cannot accept liability for any damage sustained as a result of software viruses. We would advise that you carry out your own virus checks, especially before opening an attachment. The UK firm Ernst & Young LLP is a limited liability partnership registered in England and Wales with registered number OC300001 and is a member practice of Ernst & Young Global. A list of members? names is available for inspection at 1 More London Place, London, SE1 2AF, the firm?s principal place of business and its registered office. -- _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com