tags:

views:

205

answers:

5

From the Java Language Specification:

The Java™ programming language is a general-purpose, concurrent, class-based, object-oriented language.

What is a concurrent language?

+12  A: 

It means that threads and synchronization are built into the language, rather than being part of a library that you may include (like PThreads for C).

Jonathan
+3  A: 

Designed with concurrent computing in mind.

mauro.dec
+2  A: 

It's a language optimized, or at least thought to be used for concurrent computing. It will have built in simplifications to handle things as threads.

Concurrent computing is a form of computing in which programs are designed as collections of interacting computational processes that may be executed in parallel.

via wikipedia

You can simply make a method synchronized because Java is a concurrent language. Like the doc says :

To make a method synchronized, simply add the synchronized keyword to its declaration:

public class SynchronizedCounter {
    private int c = 0;

    public synchronized void increment() {
        c++;
    }

    public synchronized void decrement() {
        c--;
    }

    public synchronized int value() {
        return c;
    }
}

via

marcgg
I would say that "You can simply make a method synchronized because Java is a concurrent language" and not the other way around
LB
@lb: makes sense, just edited my answer :)
marcgg
+1  A: 

Sounds like marketing waffle ... almost no one I know would regard any language to be "concurrent" just because it has a few primitives or syntactic sugar around threading and locking.

saret
A: 

Take a look if you want to know more about concurrency and java

LB