at least 3 ways to do OOP in corona ? confusing!

What is the best method to use OOP in Corona/lua ?

So far I have seen 3 different methods

There are 2 methods on this link

1)http://blog.anscamobile.com/2011/09/a-better-approach-to-external-modules/

2)And another in this link
http://blog.anscamobile.com/2011/09/tutorial-modular-classes-in-corona/

none of these methods are clear on defining private variable in a class which is a very important part of OOP.

Method 2 advises you use something like method1 with OOP but goes on to something quite different.

This is very confusing.
[import]uid: 138547 topic_id: 25545 reply_id: 325545[/import]