How Java APIs Support Modern Software Development