disadvantages
- Perl's object model is a little different than you're likely to encounter in other languages. you'll face a bit of a learning curve when trying to apply what you've learned from perl to another language like java.
- since it wasn't designed as an OOP language from the ground up, some things are a little odd. eg, objects are kind of (but not entirely) like modules and methods are kind of (but not entirely) like regular functions.
advantages
- perl's object model is extremely transparent, flexable, and easy to play with. if you want to really poke at things and see how OOP is done, perl will let you right into the guts.
- Damian Conway's Object Oriented Perl is one of the best books on OOP out there in any language.
and, fwiw, i wouldn't bother with Java even if you decide you want to learn OOP in another more OOP-focused language. instead, i'd look at smalltalk, ruby, or python instead.
anders pearson