Java is a hybrid language that supports both procedural and object-oriented programming paradigms. While primarily designed as an OOP language with classes, objects, inheritance, and polymorphism, Java also supports procedural programming through static methods and primitive types. You can write procedural-style code in Java, especially in the main method or utility classes.