Books: Languages: Java: Lecture 1st


INTRODUCTION TO JAVA
Here 3 lectures are present.
Click here to download

COMPUTER SCIENCE
4th Semester
M ASIF MEHMOOD
Lecturer in Computer Science



History of JAVA
Java, having been developed in 1991,  James Gosling from Sun Microsystems and his team began designing  .
     Gosling's new language needed to be accessible by a variety of computer processors. 
 In 1994, he realized that such a language would be ideal for use with web browsers and Java's connection to the internet began.
  In 1995, Netscape Incorporated released its latest version of the Netscape browser which was capable of running Java programs.



Why is it called Java?
The original name of this language was Oak, until it was discovered that a programming language already existed that was named Oak. 
Why Oak? Oak is a symbol of strength and chosen as a national tree of many countries like U.S.A., France, Germany, Romania etc.
1995, Oak was renamed as "Java" because it was already a trademark by Oak Technologies.
       
Features of Java

There is given many features of java. They are also known as java buzzwords. The Java Features given below  
Simple
Object-Oriented
Platform independent
Secured
Robust
Architecture neutral
Portable
Dynamic
Interpreted
High Performance
Multithreaded
Distributed
Features of Java simple                   
 Java language is simple because: syntax is based on C++
      removed many confusing and/or rarely-used features e.g., explicit pointers, operator overloading etc.
      No need to remove unreferenced objects because there is Automatic Garbage Collection in java

Object-oriented :
Object-oriented means we organize our software as a combination of different types of objects that incorporates both data and behaviour.
OOPs is a methodology that simplify software development and maintenance by providing some rules.

Basic concepts of OOPs are:
·          Object
·          Class
·          Inheritance
·          Polymorphism
·          Abstraction
·          Encapsulation
·          Platform Independent:

A platform is the hardware or software environment in which a program runs. There are two types of platforms software-based and hardware-based. Java provides software-based platform. The Java platform differs from most other platforms in the sense that it's a software-based platform that runs on top of other hardware-based platforms.

It has two components:

1.                Runtime Environment
2.                API(Application Programming Interface)

Platform Independent:
Java code can be run on multiple platforms e.g. Windows, Linux, Sun Solaris, Mac/OS etc. Java code is compiled by the compiler and converted into bytecode. This bytecode is a platform independent code because it can be run on multiple platforms i.e. Write Once and Run Anywhere(WORA).

Secured
Java is secured because:
No explicit pointer
Programs run inside virtual machine sandbox.

Robust
Robust simply means strong. Java uses strong memory management. There are lack of pointers that avoids security problem. There is automatic garbage collection in java. There is exception handling and type checking mechanism in java. All these points makes java robust.

Architecture-neutral:
There is no implementation dependent features
e.g. size of primitive types is set.

Portable:
We may carry the java bytecode to any platform.

High-performance
Java is faster than traditional interpretation since byte code is "close" to native code still somewhat slower than a compiled language (e.g., C++)

Distributed
We can create distributed applications in java. RMI and EJB are used for creating distributed applications. We may access files by calling the methods from any machine on the internet.
Multi-threaded
A thread is like a separate program, executing concurrently. We can write Java programs that deal with many tasks at once by defining multiple threads. The main advantage of multi-threading is that it shares the same memory. Threads are important for multi-media, Web applications etc.
Java Basics
Development Environments
Eclipse
Emacs
Notepad and Command Line

What’s Java all about then?
NOT the same as JavaScript
Java SDK consists of 2 components:
Java VM (Virtual Machine)
Java API (Application Programming Interface)
+ accompanying documentation
If you alter your code you need to re-compile it before you can run the program
ONLY use Java version 2 and above 
(Java 1.2/Java 1.3/Java 1.4 etc)

Writing your first Java program

Use a text editor to write the source code
Save it as a .java file
Compile it using Java SDK
 Compile in DOS by  
                       Javac  file name.java
                       java file name

 Hello World
 In C
int main (int argc, char** argv) {
  printf(“Hello World!\n”);
  return 0;
}/* end main */
Things to notice:
 Similar syntax
 Classes
 System.out.println()
 main is void: public static void main

In Java

public class HelloWorld {
  public static void main (String[] args) {
  System.out.println(“Hello World!”);
  }/* end main */
}//end HelloWorld

How Java Differs from C


Exclusively Object-Oriented Language
EVERYTHING must live in a class (mostly)
No Global Variables

No Pointers
Also, no ‘*’ ‘->’ or ‘&’ operators
Blessing and a Curse
Garbage Collection
Loss of Power
No Preprocessor (no #include, #define, etc.)
No goto statement
Declare/Define Variables & Methods anywhere (within a class)
No struct, enum, or typedef
Can’t overload Operators
Use new rather than malloc()


'Hello world' program in Java

n
class myprog
{
  public static void main(String[] args)
  {
  System.out.println(“Hello world!”);
  }
}
THANKS

Comments