Looks like a basic input handler. For a simplistic version to learn from, it’s not bad. For something you would actually use, it’s kind of remaking the wheel. All this stuff is already in Lua. As far as how I personally feel about OOM, who cares. This is how I tackle new things: I just load up the links and study for as long as it takes to get a handle on them.
All about Object Oriented Programming
Efficient Object Oriented Programming Tutorial
A guide on creating classes in Lua
Concepts: Object Oriented Programming in Roblox
A look into Object Oriented Programming and performance
3 Different OOP approaches: performance, memory consumption, and aesthetics
This method is a bit hit or miss, but it’s bound to increase your knowledge of whatever subject you are looking to learn about. It will at least help ask more direct questions and do the same thing all over again.