Just look at classes as objects. For example, you may have a sword in your game. That sword is an object (also called an "instance of a class"). You define the features of that object in your class, its attributes, and what it can do. The class is the "blueprint", the object is the actual use of that blueprint. Like, you could have a mold to make swords (this is your class), and you can have an actual functional sword (an object, an instance of that class, or blueprint).
You can think up some attributes for the sword:
- Length
- Width
- Sharpness
- Weight
And some actions it may perform
- Dulls
- Sharpen
- Cut
So, when you call the "dull" method in your Sword object, it performs some action that does *something*, in this case, it may decrease the value of the "sharpness" attribute.
That's the gist of it, but make sure to read some more. As for the constructor, it's a special method that is called when a class is instantiated (or, an object is created). For example, each and every time you "create" (instance) a sword, the constructor is automatically called and it sets the default values of the sword object. For example, every sword object starts with a value of 10 in its "sharpness" attribute. Constructors are commonly used to initialize the values of an object.