What problem does it solve? Java codebases often drift into poor object-oriented design: public fields, inheritance used only for code reuse, instanceof chains instead of polymorphism, and unclear abstraction boundaries. This Skill gives the AI a strict, example-driven rulebook so every class and method it writes or reviews follows the four OOP pillars. ## Core Features & Use Cases - Encapsulation enforcement: Requires private fields, defensive copies of collections, immutable objects with final fields, and Java Records for DTOs. - Inheritance discipline: Promotes composition over inheritance, final classes by default, and a maximum two-level inheritance depth. - Polymorphism and abstraction guidance: Mandates interface-based dependency injection, bans instanceof type-checking chains, and clarifies when to use abstract classes, interfaces, or sealed types (Java 17+). - Use Case: When asking the AI to build a Spring Boot order service, it will automatically design NotificationSender interfaces with Email and SMS implementations, inject them via constructor, and keep entity state encapsulated in a BaseEntity abstract class. ## Quick Start Ask the AI to write or review a Java class while following the Java OOP Principles skill, for example: create an OrderService that processes payments and sends notifications following the four OOP pillars.