From: Bauer, S. J. <Ste...@sd...> - 2010-10-11 05:42:06
|
I could be wrong, but it is my understanding, that the inherentence takes place with the code and not the data of passing open sockets, etc. What you would do would be to create your base class which is then extended by the classes that define the extra attributes. You would then be able to create the connection in the extended class since it inherits all of the methods of the base classes. One way that I have done things like this is to have an "interface" which interfaces with the hardware while you have different classes with abstract the hardware for you via your interface module. Steve ________________________________________ From: Marc MERLIN [ma...@me...] Sent: Sunday, October 10, 2010 2:48 PM To: The main list for the MisterHouse home automation program Subject: Re: [mh] Creating classes On Sun, Oct 10, 2010 at 02:33:22PM -0400, Neil Cherry wrote: > I am a bit confused and I'm hoping that someone with more experience > can help me. > > I have a class called EtherIO, the device is a 24 port digital IO > device. I want to first create a class EtherIO which contains > methods to control and manage the device. I then want to create a > new class called Pin that inherits some of the already created > attributes of the object EtherIO. I'm just not certain how you > do that in Perl? > > Example: > > my $eio = new EtherIO('192.168.1.1'); > my $pin0 = new $eio->Pin(0); # Create a new object pin0 that inherits > # the already created socket but does not > # create a new check_data (it reuses the > # one started for eio > > Is there an easy way to this? I'm not a perl OOP expert, but it looks like you're looking for ISA: package Horse; our @ISA = "Critter"; See: http://docstore.mik.ua/orelly/perl/prog3/ch12_05.htm Marc -- "A mouse is a device used to point at the xterm you want to type in" - A.S.R. Microsoft is to operating systems & security .... .... what McDonalds is to gourmet cooking Home page: http://marc.merlins.org/ ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today. http://p.sf.net/sfu/beautyoftheweb ________________________________________________________ To unsubscribe from this list, go to: http://sourceforge.net/mail/?group_id=1365 |