Which of the following is a key feature of the Java programming language?
a) Java programs are executed directly by the operating system.
b) Java is a statically-typed language and supports object-oriented programming.
c) Java code is compiled into machine code that is specific to the hardware architecture.
d) Java does not support the use of libraries or frameworks.