Java vs Scala
Java :
Java is an object oriented programming language. It is also known as multi threaded language. It was designed by James gosling in the year 1995. We can also say that the father of java is James Gosling. It was owned by the sun micro systems.
We also have many features in the java programming language. The main feature of java is the platform independence. We can also define it as WORA principle. It means that Write Once Run Any where. It is mainly used for mobile applications , desktop applications , web applications and games etc.
In java we have the hard ware and also the soft ware environment in which we can run the program. Java also have a runtime environment known as Java Runtime Environment ( JRE ) and also an Application Programming Interface ( API ).
Java was developed by sun micro systems (now subsidary of oracle) in the year 1995. Before naming as java it is already named as oak which was already a registered company.
Java is also known as the network – centric language of programming. In order to concurrency java uses the thread based model. In java the variables are in mutable type in default itself and also the java programming language will not support the lazy evaluation.
Java programming language contains the static members and also this programming language will not support the concept of operator overloading. It also offers with or provides with the backward compatibility.
We write a huge code in java programming language where it becomes more readable. We also have different kind of frame works in java such as grails, spring , etc.
Features of java:
We also have many features in java programming language.
The main features or some of the features of java are as shown below:
- Simple
- Object – oriented programming language
- Portable
- Plat form independent
- Secured
- Robust
- Architecture neutral
- Interpreted
- High performance
- Multi threaded language
- Distributed
- Dynamic
There is also an automatic garbage collection in java programming language. Java is a best known for its security and it is also known as the secured box. There is also a translator in java.
The translators used in java are compiler and the combination of interpreter with JIT compiler.
We can also define the java by using the following definition:
- Java is the collection of Application Programming Interface ( API ) .
- Application Programming Interface ( API ) is the collection of the packages.
- Packages are the collection of the classes and the interfaces.
- Where the interface is the collection of abstract methods and also the final static variables.
- Where the classes are the collection of instance variables, constructors and the instance methods.
Applications of java:
We can also develop many applications such as web applications etc. by using the java programming language. Few of the applications that are based on java are as shown below:
- Desktop application such as media player, antivirus etc.
- Web application such as Javatpoint etc.
- Enterprise application such as banking application.
- Mobile applications
- Robotic application
- Smart card application
- Embedded system
- Games etc.
Let us see a small program using the java programming language using the following code as shown below:
Example :
import java.io.*;
class Demo
{
public static void main ( String args [ ] )
{
System.out.println ( “ Welcome to java “ );
} // main method
} // demo class
Output :
Welcome to java
Scala :
Scala is also a programming language. It is a programming language which can be statically typed language. In order to support the modern concurrency the java programming language uses the thread based model whereas in scala programming language it uses the actor model to support the concurrency.
It mainly uses the Java Virtual Machine that is JVM and it also uses the many other platforms in order to write a software. It also includes the other platforms which uses the Scala – Native and also the Java Script in the scala.
As we have seen that the java variables are in mutable type by default but the scala variables are in immutable type by default . Scala programming language also supports the lazy evaluation which is not supported in the java programming language.
The scala programming language will not consist of the static members which are in the java programming language. The operator overloading which is not supported in java is supported in the scala programming language.
The java programming language offers with or provided with the backward compatibility whereas the scala programming language will not offer or will not provide with the backward compatibility.
The scala programming language mainly contains the nested codes and so it is less readable. There are also many frameworks that are related with the scala programming language such as Lift , Play etc.
Features of scala programming language :
As same as java programming language we also have many features in the scala programming language. The main features or some of the features of scala are as shown below:
- It is an object oriented programming language.
- Functional language.
- Powerful language.
- Allows us in order to execute the java code.
- It is also a statically typed programming language.
Let us see a small program using the java programming language using the following code as shown below:
Example :
object ScalaDemo
{
def main ( args : Array [ String ] )
{
println “ Welcome to scala “
}
}
Output :
Welcome to scala