Talk:Java (programming language)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Former featured article Java (programming language) is a former featured article. Please see the links under Article milestones below for its original nomination page (for older articles, check the nomination archive) and why it was removed.
Main Page trophy This article appeared on Wikipedia's Main Page as Today's featured article on December 17, 2005.


This article has a section on 'editions' (SE, ME, etc). But nothing on the differences between versions. Java 1.7 (and 1.8, though not yet finalized) is in some ways quite a different languages from 1.0. Does anyone think there ought to be a 'Versions' section with brief notes on the main changes (or perhaps just the language changes) in each version? These could include links to information on the relevant topic elsewhere on WP.

Java influenced by / influenced Python[edit]

If one edge is listed (influenced), the other should be listed as well (influenced by).

Will you please stop adding these tenuous claims.
The various forms of for-each loop construct have been around in many languages, not just the ones you've heard of.
To show that "<foo> influenced <bar>" it would be necessary to show that <bar> took its inspiration from <bar>, not merely that both <foo> and <bar> had lifted it from the same place, usually Smalltalk or Scheme.
There is almost nothing original in any language you've heard of. Popular and long-lived languages are those with the wrinkles ironed out. Almost always this means that they weren't the ones that innovated a feature (in a way that's probably slightly awkward and hindsight would change), they're the ones that borrowed a feature from a language nearer the bleeding edge of language development.
Also, Stackoverflow is a place for first year students in Indian colleges to crib answers from their supposed experts: second year students. It's far from an accurate source, either technically or historically. Andy Dingley (talk) 10:39, 5 November 2014 (UTC)


I'm considering removing the entire Examples section per WP:NOTHOWTO. I don't think there's anything in there that isn't covered in WikiVersity. Objections? --Richard Yin (talk) 16:16, 24 November 2014 (UTC)

I'd certainly keep an examples section, and the Hello World that's there is OK pretty much as it stands.
There is room for improving the Examples though. Examples should be strongly relevant and should illustrate "typical Java" - maybe a Servlet? Their point would be to illustrate some flavour of the language, and to contrast what it does differently from other languages, particularly C++. I'm not keen on the current examples that are largely comments (that indicates they're an example that's too much about a narrow specific aspect, not about "Java" broadly at this level). Nor am I keen on the long dissection of these examples following them and being used to explain each language statement.
This is an encyclopedic article on Java. It's not a tutorial, it's not even the introduction to a tutorial. It should remain an overview. What is Java, what is it typically used for, which language family does it fit into, how do similar commonplace tasks (and I think a Servlet is good) look different in Java from a similar task in C++ / .NET families.
I don't see Wikiversity as relevant. WP articles should set out to be workable encyclopedia article in isolation. We should link to Wikiversity, not rely on it. For as far as an example is useful to the encyclopedic goal, it belongs here. For anything more, such as becoming an introduction to a detailed tutorial, that belongs entirely, and from the start, elsewhere. Andy Dingley (talk) 17:46, 24 November 2014 (UTC)
Yes, I have this article in mind every time I consciously ignore the wiki java programmers solicitations for funding at the top of the page, it seems like they should know how to write a wiki article about java. — Preceding unsigned comment added by (talk) 18:06, 6 February 2015 (UTC)

Special classes section[edit]

Is there anything (worth keeping) in the Special classes section that belongs in its own section, as opposed to the Class libraries section or an expansion thereof? As far as I can tell the special classes section is more or less an incomplete list of class library features, with code examples. --Richard Yin (talk) 20:58, 17 December 2014 (UTC)

Off topic tag in Editions section[edit]

I put an off topic tag in the Editions section. The bit I applied it to is a three-sentence paragraph that I'm fairly certain a) should be expanded quite a lot and b) fits under Syntax. --Richard Yin (talk) 16:42, 18 December 2014 (UTC)

Concurrent? (Well, sort of, but...)[edit]

In "Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented...". Whilst Java is certainly a language that includes support for concurrent programming it is not one of the languages that puts it up front and centre as a main or major feature of the language. In fact, in Java 8, you need to program in a different style (using streams and lambda style) to get the most benefit out of concurrency - and this is not the prevalent style of most existing Java software, libraries, etc. Java doesn't feel very 'concurrent' compared to, say, Clojure or Erlang. Java has slowly developed and included more and more features (and libraries) for concurrent programming over time, as concurrent programming has become more important. It also retains (necessarily) a set of low-level concurrency mechanisms, which are probably the most used - even though they are the least abstracted and scalable. (For example, a preference for direct use of threads, 'synchronized' and locks, over the higher-level java.util.concurrent library. Put another way, Java seems to carry with it a good deal of concurrency baggage.) Granted that other languages, more concurrent in nature do exist on the JVM - but the JVM is not Java. Therefore, it seems odd to list 'concurrent' first. I think it is fair to say that Java is about as concurrent as it is functional (as of Java 8), so why not list 'functional' too? (But please don't - it is no more functional than Python, Ruby or Groovy.) (talk) 13:54, 8 April 2015 (UTC)

Cross-platform? (Well, sort of, but...), Fast? (Well, sort of, but...), More productive? (Well, sort of, but...) ... . Its a consistent theme in Java philosophy, Baggage?(not a problem...) — Preceding unsigned comment added by (talk) 18:59, 5 May 2015 (UTC)