ABSTRACT

Java is an extremely popular enterprise programming language, designed with, among other things, thread-based concurrency and security in mind. It gained massive popularity in the early days of the World Wide Web as various browser manufacturers, notably Sun and Netscape Communications, added browser support for downloading and executing compiled Java code, known as applets. This chapter focuses on Java threads. Java programs consist entirely of classes, optionally grouped into packages. Like JavaScript and Lua, Java’s types are subdivided into primitive types and reference types. Like Julia, Java has both abstract and concrete classes. It allows both abstract and concrete classes to have subclasses. Java’s interfaces define a set of related constants and methods that provide a contract, or application program interface, that implementing classes must conform to. As Java tends to favor static typing, parameterized types, known as generic types, appear quite often.