Java (programming language)

object-oriented programming language

Java is a general-purpose, class-based, object-oriented computer programming language that is specifically designed to have as few implementation dependencies as possible.

James Gosling, the creator of Java
CONTENT : A - F , G - L , M - R , S - Z , See also , External links


Quotes are arranged alphabetically by author

A - F

  • Today, we're at the beginning stages of the next level. Executable UML is the next logical, and perhaps inevitable, evolutionary step in the ever-rising level of abstraction at which programmers express software solutions. Rather than elaborate an analysis product into a design product and then write code, application developers of the future will use tools to translate abstract application constructs into executable entities. Someday soon, the idea of writing an application in Java or C++ will seem as absurd as writing an application in assembler does today.
    • Grady Booch (2002) "The Limits of Software". Lecture September 2002
  • Archetypes, color, and components will forever change how you build Java models. We build Java models with teams of developers. In our day-to-day mentoring, we develop and try out new ideas and innovations that will help those developers excel at modeling.
    • Peter Coad, Jeff de Luca, and Eric Lefebvre. (1999) Java Modeling Color with Uml: Enterprise Components and Process with Cdrom. Prentice Hall PTR.
  • Java is, in many ways, C++--.
    • Michael B. Feldman, Professor Emeritus Department of Computer Science The George Washington University; cited in Magnus Lie Hetland (2002) Practical Python. p. xix

G - L

  • Java is C++ without the guns, knives, and clubs.
    • James Gosling, co-inventor of Java; Cited in: David Parsons (2001) Object Oriented Programming with C++. p. 19
  • Java was, as Gosling says in the first Java white paper, designed for average programmers. It's a perfectly legitimate goal to design a language for average programmers. (Or for that matter for small children, like Logo.) But it is also a legitimate, and very different, goal to design a language for good programmers.

M - R


S - Z

  • DOLIST is similar to Perl's foreach or Python's for. Java added a similar kind of loop construct with the "enhanced" for loop in Java 1.5, as part of JSR-201. Notice what a difference macros make. A Lisp programmer who notices a common pattern in their code can write a macro to give themselves a source-level abstraction of that pattern. A Java programmer who notices the same pattern has to convince Sun that this particular abstraction is worth adding to the language. Then Sun has to publish a JSR and convene an industry-wide "expert group" to hash everything out. That process--according to Sun--takes an average of 18 months. After that, the compiler writers all have to go upgrade their compilers to support the new feature. And even once the Java programmer's favorite compiler supports the new version of Java, they probably still can't use the new feature until they're allowed to break source compatibility with older versions of Java. So an annoyance that Common Lisp programmers can resolve for themselves within five minutes plagues Java programmers for years.
    • Peter Seibel (2005) Practical Common Lisp.

See also

Wikipedia has an article about: