Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the technical term for C# or Java type languages?

This is probably a very simple question, but what is the technical term for this class of language?

They use an "intermediate" assembly type language which is sent through the JVM or CLR. They both are object oriented and they both depend on an intermediary such as the Java Virtual Machine or the Common Language Runtime to compile into native machine laguage.

Unlike Asm/C/C++ they don't compile directly into native machine language and require intensive memory allocation knowledge. They both use garbage collection.

Is there a technical term which seperates Java and C# from C++?

like image 223
danmine Avatar asked Oct 14 '08 07:10

danmine


People also ask

What does C stand for in computer terms?

C is what is called a compiled language. This means that once you write your C program, you must run it through a C compiler to turn your program into an executable that the computer can run (execute).

Why C is called?

C is a general purpose computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system. It was named 'C' because many of its features were derived from an earlier language called 'B'.

What are variables C?

Variables are containers for storing data values. In C, there are different types of variables (defined with different keywords), for example: int - stores integers (whole numbers), without decimals, such as 123 or -123. float - stores floating point numbers, with decimals, such as 19.99 or -19.99.


3 Answers

A key difference between C++ and .NET/Java is the automatic reclaiming of memory that is no longer required. This is known as garbage collection. For this property, they are known as managed platforms.

Both Java/.NET delay the compilation of bytecode into native code until the last minute. For this property they are known as JIT-compiled (Just In Time).

The C#/Java/C++ languages are known as imperative, object-oriented languages.

The type system in both .NET and Java only allows verifiable invocation of methods. For this property they are known as statically typed.

C#/Java/C++ are Turing complete, meaning that, in practice, they can produce any calculation.

like image 172
Drew Noakes Avatar answered Nov 09 '22 08:11

Drew Noakes


Those languages are commonly referred to as 'managed' languages.

like image 28
Stephan Tobies Avatar answered Nov 09 '22 08:11

Stephan Tobies


The intermediate representation is more a property of the runtime system than of the language itself. These types of systems are often called Bytecode systems.

like image 40
Greg Hewgill Avatar answered Nov 09 '22 08:11

Greg Hewgill