Why Java is Technology?

Hello everyone,

I m very new to java, i m still learning java. At the beginning itself i got a doubt that why everyone calls java as a technology not language. Please let me know why is Java is called as technology not Programming language.

[253 byte] By [Badriprasada] at [2007-11-27 10:41:33]
# 1

It is a programming language. Lots of people call it that.

What's the problem? How does changing the name alter your understanding?

Yes, it's a programming language. Now go and learn how to program with it.

%

duffymoa at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 2

> Please let me know why is Java is called as technology not

> Programming language.

Java is more than just a programming language; it's a platform. The Java virtual machine specification and Java runtime environment are not programming languages, and other languages can be used to write programs on the Java platform.

~

yawmarka at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 3

Your answer is better than mine, Steve. Thanks.

%

duffymoa at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 4

> > Please let me know why is Java is called as

> technology not

> > Programming language.

>

> Java is more than just a programming language; it's a

> platform. The Java virtual machine specification and

> Java runtime environment are not programming

> languages, and other languages can be used to write

> programs on the Java platform.

>

> ~

Well said

deAppela at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 5

All that is true, but the word "technology" gets overused.

For example, on the page "Update: An Introduction to the Java EE 5 Platform"

http://java.sun.com/developer/technicalArticles/J2EE/intro_ee5/

I searched and found these uses of the word technology. How many uses

actually add meaning to the sentences in which they appear?

The sections on web service support and JavaServer Faces technology have been greatly expanded

Mapping Java technology classes to XML

Mapping Java technology classes to databases

Web applications that use JavaServer Pages (JSP) technology only

Example 1A shows the Java technology code for a hypothetical session bean using EJB 2.1 software.

In fact, this API can also be used outside the Java EE platform in plain Java technology programs

Because entity beans are simple Java technology classes, they can be packaged virtually anywhere in a Java EE application

Now it's as easy as placing the @WebService annotation on a Java technology class.

When starting from Java technology classes, JAXB 2.0 can generate XML Schema documents that are automatically embedded inside a Web Services Description Language (WSDL) document

Example 6 shows how the mapping of Java technology classes and methods to web services

As the standard API used to bind XML documents to Java technology objects,

The number and size of the Java technology classes generated from a given Schema has been greatly reduced.

Example 9 shows a Java technology class annotated for use with JAXB 2.0.

A common issue in developing some Java technology classes first and defining their mapping to Schema later is that some common Java technology types do not have a standard representation in XML Schema.

The JavaServer Faces technology establishes standards for component design and as a result has created a new market for third-party JavaServer Faces technology components.

One or more JSP technology pages

Duke, the Java technology mascot [oy!]

BigDaddyLoveHandlesa at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 6

Technology 1. Human innovation in action that involves the generation of knowledge and processes to develop systems that solve problems and extend human capabilities; 2. The innovation, change, or modification of the natural environment to satisfy perceived human needs and wants.

Java can solve problems that humans have, therefore it is a technology. Sun does overuse the term, but some people might think "Java? You can download coffee nowadays?".

kavon89a at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 7

" . . . and other languages can be used to write programs on the Java platform.

I was under the impression the JVM reads "bytecode".

Are you saying other languages can be compiled into Java bytecode?

Without going into details, how does that work?

Thanx.

LazarusLonga at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 8

> All that is true, but the word "technology" gets

> overused.

>

I agree.

jschella at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 9

> Are you saying other languages can be compiled into Java bytecode?

Yes (Groovy, for example).

> Without going into details, how does that work?

Pretty much the same way Java source code is compiled to bytecode. The compiler parses the source file and generates the appropriate bytecodes in accordance with the VM spec.

~

yawmarka at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 10

JYthon also compiles to bytecodes, same for JRuby. The JVM does not know anything about the Java langauge (technology :)) only of the class file format which leaves it open for other languages to be hosted on it.

_helloWorld_a at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 11

> JYthon also compiles to bytecodes, same for JRuby.

LISP, too, via Kawa.

~

yawmarka at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 12

> > JYthon also compiles to bytecodes, same for

> JRuby.

>

> LISP, too, via Kawa.

>

> ~

I suppose c/c++ (or any language compiled to compliant native code) should be included as it can be called through JNI.

jbisha at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 13

> I suppose c/c++ (or any language compiled to

> compliant native code) should be included as it can

> be called through JNI.

No, native code called via JNI is not compiled to byte code!

('though one might trick gcc into compiling c++ into bytecode with some evil hacks ... but that's another subject for people who use multiple exclamation marks)

JoachimSauera at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 14

> I was under the impression the JVM reads "bytecode".

> Are you saying other languages can be compiled into

> Java bytecode?

> Without going into details, how does that work?

>

> Thanx.

The same way C, C++, FORTRAN, COBOL, BASIC, etc. can be compiled into machine code.

[side note]

I once built a language of my own that compiled into java ByteCode... I called it ShitPuff. It had one command: "print" - and all it would print was, "Hello. This is ShitPuff."

[/side note] <-- Thought I'd share that.

Navy_Codera at 2007-7-28 19:13:17 > top of Java-index,Java Essentials,New To Java...
# 15

> > I suppose c/c++ (or any language compiled to

> > compliant native code) should be included as it can

> > be called through JNI.

>

> No, native code called via JNI is not compiled to

> byte code!

Byte code does not define the Java language.

There are a number of products that create executables from java code.

I think that there is at least one direct compiler as well.

jschella at 2007-7-28 19:13:21 > top of Java-index,Java Essentials,New To Java...
# 16

Hi, I'm new, forgive me if this is something just about everybody knows the answer to.

Is there anything that can compile / convert bytecode to machine code? i.e. make an executable .exe from a .jar or .class ?

Be interesting to know.

Regards, Darryl

Darryl.Burkea at 2007-7-28 19:13:21 > top of Java-index,Java Essentials,New To Java...