When constructor parameters have the same name as class fields.
Using 'this' in constructors is necessary when parameter names are identical to field names. This is a common practice to avoid confusion and ensure correct assignment. In a `Product` class, `this.price = price;` correctly assigns the input parameter to the field.