Articles by "Java Concept"
Showing posts with label Java Concept. Show all posts
Java Notes For Java Beginner

To execute the java program in multitasking way, this concept is called as multi-threading.
      Multi-threading is used to overcome the idle time of CPU.

What is the procedure to create thread? And how it is execute?.
Inherit the java.lang.Thread class in user defined class. so our class becomes thread class. override the public void run() method thread class in our class. Create the object of our class. This is the new born stage of thread. Active this object using start() method of thread class. It will implicitly calls the overrides run() method.

Note : the program execution and time sharing to the threads are totally depends upon local operating system and the processor.

class A extends Thread
{
 public void run()
 {
 for(int i=1;i<=50;i++);
 System.out.println("i is "+i);
 }
}
class B extends Thread
{
 public void run()
 {
 for(int j=1;j<=50;j++);
 System.out.println("j is "+j);
 }
 
 public static void main(String args[])
 {
 A a1=new A();
 B b1=new B();
 
 a1.start();
 b1.start();
 
 for(int k=1;k<=50;k++)
 System.out.println("k is "+k)
 }
}
Another procedure to create and execute the Threads.       Implements the java.lang.Runable interface into user defined class, override it's only one method public void run() in our class. Still this is not the thread object, because our class is not extending the thread class.       So create the separate object of java.lang.Thread class and assign the user defined object of this thread object call the start() method using thread class object.       It will be implicitly calls the override run() method of respective object classes.
class AA extends object implements runnable
{
 public void run()
 {
 for(int i=1;i<=50;i++);
 System.out.println("i is "+i);
 }
}
class BB implements runnable
{
 public void run()
 {
 for(int j=1;j<=50;j++);
 System.out.println("j is "+j);
 }
 
 public static void main(String args[])
 {
 AA a1=new AA();
 BB b1=new BB();
 
 Thread f1=new Thread(a1);
 Thread f2=new Thread(b1);
 
 t1.start();
 t2.start();
 }
}

Thread controlling methods:

Methods which are used to manage the execution controlling of threads at running position.

1) sleep()

This method is used to interrupt the running thread for the given the interval in milliseconds. this interrupted thread will completing the time interval. This method throws interval. This method throws Interrupted Exception so we have to handle it at calling time.
class A extends Thread
{
 public void run()
 {
 for(int j=1;j<=50;j++);
 {
  try{
   if(j==15)
   thread.sleep(500);
  }
  catch(Exception e)
  {}
 System.out.println("j is "+j);
 }
 }
}
class B extends Thread
{
 public void run()
 {
 for(int i=1;i<=50;i++);
 System.out.println("i is "+i);
 }
 
 public static void main(String args[])
 {
 A a1=new A();
 B b1=new B();
 
 a1.start();
 b1.start();
 }
}

2) setPriority()

This method is used to set the execution of threads. It is just a request to local operating system. There are three type of priority:
  1. Minimum priority => 1
  2. Normal priority => 5
  3. Maximum priority => 10
A a1=new A();
B b1=new B();
C c1=new C();

a1.setPriority(10);
b1.setPriority(7);
c1.setPriority(5);

a1.start();
b1.start();
c1.start();

3) join()

This method is used to join or connect or connect one thread to other, so that the other thread will complete it's execution and normal goes into dead stage.
What is the procedure to kill any thread ?.
Use stop() method to kill the thread abnormally, but it is deprecated from java library. and it's replacement method join().
Write a program to join one thread to another using join() method.
class D extends Thread
{
 public D extends Thread
 {
  for(int i=1;i<=5000;i++)
  System.out.println("i is "+i);
 }
}
class E extends Thread
{
 D d1;
 E(D d1) //pass the reference from
 {
  this.d1=d1;
 }
 public void run()
 {
 for(int j=1;j<=50;j++)
  {
   try{
    if(j==15)
    d1.join();
   }
   catch(Exception e);
   {}
   
   System.out.println("j is "+j);
  }
 }
 
 public static void main(String args[])
 {
  D d1=new D();
  E e1=new E()d1; //pass reference to constructor
  
  d1.start();
  e1.start();
 }
}

Synchronization :

To execute the thread based program in process way, this concept is called as synchronization.
Keyword "synchronized" is used to define such methods.
class Test
{
 Synchronized public void fun1(String args[])
 {
  System.out.println(" [ Hello ");
  try
  {
   Thread.sleep(1000);
  }
  catch(Exception e1)
  {}
  System.out.println(" [ "+msg);
  try
  {
   Thread.sleep(1000);
  }
  catch(Exception e)
  {}
  System.out.println(" ] world ] ");
 }
}
class AB extends Thread
{
 Test t1;
 AB(Test t1)
 {
  this.t1=t1;
 }
 
 public void run()
 {
  t1.fun1("java");
 }
}
class BC extends Thread
{
 Test t1;
 BC(Test t1)
 {
  this.t1=t1;
 }
 
 public void run()
 {
  t1.fun1("C++");
 }
 
 public static void main(String args[])
 {
  Test t1=new Test();
  
  AB a1=new AB(t1);
  BC b1=new BC(t1);
  
  a1.start();
  b1.start();
 }
}
Java Notes For Java Beginner
java packageThe set of built in classes stored under certain name and used as a library in java application, is called as package.
The super most package of JAVA hierarchy is "java".

java.lang package :

This package include all the basic classes which are required every java application.

Examples :
  • object
  • string
  • System
  • Exception
  • Thread
  • etc...

Note : This package is by default allocated to every java program.

java.io package :

This package are used to handle the input and output operation between editor-console, client-server and database handling program.
Examples :
  • DataInoutStream
  • BufferedReader
  • fileOutputStream
  • fileReader
  • etc...

java.net package :

This package contains all the network related classes and interfaces. They are used to handle the networking in client-server architecture.

Examples :
  • Socket
  • ServerSocket
  • INetAddress
  • DatagramPackage
  • etc...

java.sql package :

This package have data handling classes and interface.

Examples :
  • class:
    • DriverManager
  • Interfaces:
  • Connection
  • Statement
  • ResultSet
  • etc...

java.awt package :

The classes of this package are used to represent the graphical output of java application.

Examples :
  • Button
  • Lable
  • Textfield
  • frame
  • Panel
  • Checkbox
  • etc...



java.awt.event package:

The interfaces of this package are used to handle the events on graphical components.

Examples :
  • ActionListener
  • TextListener
  • WindowsListener
  • MouseListener
  • etc...


keyword "import" is used to include any of the above package in java application.

Example:

import java.io.*;
This statement will include all the classes and interfaces of this package ("*" mean all the classes)
import java.fileReader;
This statement will include any fileReader class in program other classes are not included.
import java.awt.*;
This statement will inlcude only awt classes.
It cannot import the event package. If we want to import event package element then we have to write.
import java.awt.event.*;

How to create and use it in another application ?
Declare the keyword 'package' in the heading selection of package class.
Declare the fully fully qualified path of this class that where to store it in memory (Hard disk).
Declare all the elements as public in and with class. Save and compile this application in working folder.
Then create the folder as mention with package keyword. Cut the .class file of this class and paste it into the created package folder. This is the package creation process.
Create another java application in working folder. Include the package using import keyword and fully qualified path of package in new application, Now we can with it's elements.
//Package Code
package Abc.Outer.Inner.Pack1;
public class A //public class important
{
 public void fun1()
 {
  System.out.println("Hello package class method");
 }
}

Working :

my working folder
D:\xyz
save and compile

Create folders as mention with package keyword in working folder.
D:\xyz\Abc\Outer\Inner\pack1
cute and paste the A.class file into pack1 folder.

Now file location will be
D:\xyz\Abc\Outer\Inner\pack1\A.class

Create another java application in which this package class should be imported.

//Program code
class B
{
 public void fun2()
 {
  System.out.println("Hello fun2");
 }
 public static void main(String args[])
 {
  A a1=new A();
  a1.fun1();
  B b1=new B();
  a1.fun2();
 }
}


Another process to create package and store the .class file into it.

Use the -d attribute with javac command to create the directories. It creates the specified packages or directories with package keyword.

The "."
Directories should be created in working folders. And then the .class file of package class is stored in specified folder.

JAVAC -d . A.JAVA
-d for directors
. for working folder

Java Notes For Java Beginner
Inner classes

Inner classes :

To define one class into another, this process is called as inner classes.

There are four type of inner classes
1) Member inner class.
2) Static inner class.
3) Local inner class.
4) Anonymous inner class.


Member inner class :

A class which is defined as a member of some outer class is called as member inner class.

Write a program to define the member in inner class.
class outer
{
 int x=10;
 void fun1()
 {
  System.out.println("Hello outer class method");
 }
 class inner
 {
  int y=20;
  void fun2()
  {
   System.out.println("Hello inner class method");
  }
 } //inner class end
 
 public static void main(String args[])
 {
  outer a1=new outer();
  System.out.println("a1.x");
  a1.fun1();
  
  //a1.fun2();error
  //Inner il=new Inner();error
  
  outer.Inner i2=new Outer().new Inner();
  System.out.println(i2.y);
  
  //il.fun1();error
 }
} //outer class end

Static inner class :

Inner classes can be static we can instantiate this class directly or by the outer class name.
Write a program to define the static inner class.
class outer
{
 static int x=10;
 void fun1()
 {
  System.out.println("Hello outer class method");
 }
 static class inner
 {
  int y=20;
  void fun2()
  {
   System.out.println("Hello inner class method");
  }
 } //inner class end
 
 public static void main(String args[])
 {
  outer a1=new outer();
  System.out.println("X is "+x);
  System.out.println("X is "+a1.x);
  a1.fun1();
  
  Inner i=new Inner();
  System.out.println("Y is "+i.y);
  i.fun2();
 // OR
  outer.Inner il=new outer.inner();
  System.out.println("Y is "+il.y);
  il.fun2();
 }
} //outer class end

Local inner class :

A class which is defined in method body of outer class, this is called as local inner class. The scope and accessibility of this class is limited up to the method in which it is defined.
Write a program to define the local inner class.
class outer1
{
 int y=20;
 void fun1()
 {
  System.out.println("Enter into method");
  
  class local
  {
   int x=50;
   void fun2()
   {
    System.out.println("Hello local class method");
   }
  };
  
 local L1=new local();
 System.out.println("X is "+L1.x);
 L1.fun2();
 System.out.println("Exit from method");
 } //fun1

 public static void main(String args[])
 {
  outer1 a1=new outer1();
  System.out.println("Y is "+a1.y);
  a1.fun1();
 }
} //outer class end

Anonymous inner class :

A local inner class, which does not have name and implements the outside interface, is called as anonymous inner class.
Write a program to define the anonymous inner class.
interface xyz
{
 public void fun1();
 public void fun2();
}
class test
{
 public xyz getxyz1()
 {
  xyz x1=new xyz()
  {
   public void fun1()
   {
    System.out.println("Hello first class fun1");
   }
   public void fun2()
   {
    System.out.println("Hello first class fun2");
   }
  };
 return(x1);
 } //getxyz1
 
 public xyz getxyz2()
 {
  xyz x2= new xyz()
  {
   public void fun1()
   {
    System.out.println("Hello second class fun1");
   }
   public void fun2()
   {
    System.out.println("Hello second class fun2");
   }
  };
 return(x2);
 } //getxyz2
 public static void main(String args[])
 {
  Test t1=new Test();
  xyz x3=t1.getxyz1();
  xyz x4=t1.getxyz2();
  
  x3.fun1();
  x3.fun2();
  
  x4.fun1();
  x4.fun2();
 }
}


class AB
{
 {
  System.out.println("Non static block");
 }
 static
 {
  System.out.println("static block");
 }
 
 AB()
 {
  System.out.println("Constructor block");
 }
 
 fun1()
 {
  System.out.println("Method block");
 }
 
 public static void main(String args[])
 {
  System.out.println("Main block");
  
  AB a1=new AB();
  a1.fun1();
  
  AB a2=new AB();
 }
}

static block
Main block
Constructor block
Method block

Non static block
constructor block
Java Notes For Java Beginner

Interface

Interface in javaA special type of class, which is used to declare only abstract methods is called as interface.

Keyword "interface" is used to define this class.

Keyword "implemets" is used to inherit the interface into classes.

interface xyz
{
 public void fun1();
 public void fun2();
}
class A implements xyz
{
 public void fun1()
 {
  System.out.println("Hello Function 1");
 }
 public void fun2()
 {
  System.out.println("Hello Function 2");
 }
 public void fun3()
 {
  System.out.println("Hello Function 3");
 }
 
 public static void main(String args[])
 {
  A a1=new A();
  a1.fun1();
  a1.fun2();
  a1.fun3();
 }
}


Note : One class can implements more than one interface.

Example :
Class A implements xyz, pqr, abc.
It look like multiple inheritance but it is not actually.

IMP Note :
By default all the elements declared in interface are in public.



Final keyword :

Keyword "final" is used to create constant in Java program. The values of these variables are never changed at runtime.

Example :
final int x=3;
x=5; // error
x=3; // error
x++; // error

IMP Note :
By default the interface variables are public, static and final.

interface ABC
{
 public final static int x=10;
 int y=20;
}
class B implements ABC
{
 public static void main(String args[])
 {
  B b1=new B();
  
  System.out.println("X is "+b1.x);
  System.out.println("Y is "+b1.y);
  
  // b1.X=50;  error
  // b1.Y=100; error
  
  System.out.println("X is "+ABC.x);
  System.out.println("Y is "+ABC.y);
 }
}

Java Notes For Java Beginner

Inheritance:

The concept of reutilazation is called as inheritance.
Inheritance is used to eliminate the reduandancy of program.


Note : Keyword "extends" is used to inherit one class into another class.

The class which gives it's properties to another class is called as super class or base class.
The class which takes properties from other class is called as sub-class or derived class.

Syntax:
class B extends A
{
-----
-----
}

Types of inheritance

1] Single inheritance :

The one to one communication between super and sub class, this concept is called as single inheritance.

/*Example of simple inheritance */
class A
{
 void fun1()
 {
  System.out.println("Hello this is Super class method");
 }
}
class B extends A
{
 void fun2()
 {
  System.out.println("Hello this is Sub class method");
 }
 
 public static void main(String args[])
 {
  A a1=new A();
  B b1=new B();
  
  a1.fun1();
  b1.fun2();
  b1.fun1();
 }
}


2] Multilevel inheritance :

To inherit more than one classes in chain format with a finite termination, this concept is called as multilevel inheritance.

Tip [Rule] message : One java class can extends only one java class.
According to this rule, Java doesn't follow multiple, Multi-path and Hybrid inheritance.

Note : Class object is the super must built in class of java hierarchy. Every built in and user defined classes should inherit the object class. This class provides the context creation, constructor calling, data overloading and execution properties to the object creation statement.


JAVA Does not Follow The Cyclic Inheritance.

Constructor are executed in the manner they are defined in inheritance


Write a program to define the constructor execution inheritance.

class A extends object
{
 A()
 {
  System.out.println("Class A Constructor");
 }
}
class B extends A
{
 B()
 {
  System.out.println("Class B Constructor");
 }
}
class C extends B
{
 C()
 {
  System.out.println("Class C Constructor");
 }
}
class D extends C
{
 D()
 {
  System.out.println("Class D Constructor");
 }
 
 public static void main(String args[])
 {
 D d1=new D();
 C c1=new C();
 B b1=new B();
 A a1=new A();
 }
}



Super


Note : Kayword 'super' is used to call the super class parameterized constructor from sub class constructor.

"Super" should be the first statement of constructor body.

Write a program to call the super class default and parameterized constructor from sub class.

class A
{
 A()
 {
  System.out.println("Class A constructor");
 }
 A(int a)
 {
  System.out.println("A is "+a);
 }
}
class B extends A
{
 B()
 {
  System.out.println("Class B constructor");
 }
 B(int b)
 {
  System.out.println("B is "+b);
 }
}
class C extends B
{
 C()
 {
  System.out.println("Class C constructor");
 }
 C(int c)
 {
  System.out.println("C is "+c);
 }
 
 public static void main(String args[])
 {
 C a1=new C();
 }
}


Java program execution criteria :


JVM loads all the static data of class into memory. At last it loads the main method. But executes the main() method first to all main() method creates objects.
Object's call the constructor creates context for remaining non-static data of class. It loads this data into newly created context and assign the control to the object.

Method overriding :


To define the same name method with same signature and same arguments in super class as well as in sub class, this concept is called as method overloading.

Note : Keyword "super" is used to call the super class overrided method from sub class method.

Write a program to define methods overriding.

class P
{
 void fun1()
 {
  System.out.println("Hello super class method");
 }
}
class Q extends P
{
 void fun1()
 {
  Super.fun1();
  System.out.println("Hello Sub class method");
 }
 public static void main(String args[])
 {
  Q q1=new Q();
  q1.fun1();
 }
}
Java Notes For Java Beginner

Primitive data types:


There are four primitive data types in JAVA.


Interger - byte, short, int, long
Real Number - float, double
Character - char
Boolean - boolean


Write a program to print by default value of all the primitives..
class Type
{
 byte a;
 short b;
 int c;
 long d;
 float e;
 double f;
 char g;
 boolean h;
 
 public static void main(String args[])
 {
 Type t1 = new Type();
 
 Syste.out.println("byte default value is "+t1.a);
 Syste.out.println("short default value is "+t1.b);
 Syste.out.println("int default value is "+t1.c);
 Syste.out.println("long default value is "+t1.d);
 Syste.out.println("float default value is "+t1.e);
 Syste.out.println("double default value is "+t1.f);
 Syste.out.println("char default value is "+t1.g);
 Syste.out.println("boolean default value is "+t1.h);
 }
}
Java Notes For Java Beginner
A special type of method, which is used to construct memory for class elements, is called as constructor.

Example :
class A
{
 A()
  {
  }
}


It's specialties are

  • It's name and class name is same.
  • It executes implicitly on object creation statements.
  • Constructors cannot be executed explicitly by objects that one constructor in it's life time.
  • Constructor doesn't have any return type not even void


Example :
class AB
{
 AB()
 {
  System.out.println("Hello Constructor");
 }
 public static void main(String args[])
 {
  AB a1=new AB();
  AB a2=new AB();
  AB a3=new AB();
  AB a4=new AB();
  }
}


Types of Constructor :

There are two types of constructor in Java.

1.Default Constructor :

A constructor which does not accept arguments, is called the default constructor.

Parameterized Constructor :

A constructor which have parameters and accepts arguments at runtime is called as parameterised constructor.


Write a program to define constructors overloading.
class ABC
{
 ABC()
 {
  System.out.println("Default constructor");
 }
 ABC(int x)
 {
  System.out.println("X is "+x);
 }
 ABC(float p)
 {
  System.out.println("P is "+p);
 }
 ABC(int a,int b)
 {
  System.out.println("A is "+a+" B is "+b);
 }

public static void main(String args[])
 {
 ABC a1= new ABC();
 ABC a2= new ABC(100);
 ABC a3= new ABC(12.5);
 ABC a4= new ABC(1,10);
 }
}


Construction execution criteria[Process] :

There are four steps in execution criteria of Constructor.
  1. TO create context.
  2. To load the class data into that context.
  3. To initialize all the uninitialized data of context.
  4. To execute it's own body.

Java Notes For Java Beginner
To define the same name method for more than one time in one class with same signature and different arguments this concept is called as method overloading.


Signature means : [In Java]
Access specifiers, Return type and method name.


Write a program to define methods overloading.


class over
{
 void fun1
 {
  System.out.println("No argumented method");
 }
 void fun1(int x)
 {
  System.out.println("X is "+x");
 }
 void fun1(int a,int b)
 {
  System.out.println("A is "+a+" B is "+b);
 }
public static void main(String args[])
 {
  over o=new over();
  o.fun1();
  o.fun1(10);
  o.fun1(10,20);
 }
}

Java Notes For Java Beginner

Access specifiers

Java have four access specifiers.
  • public :
    • The keyword which is used a access specifier whose data can be accessible in same class, other class, other program, other folder, other colon and even other machine.
    • Java follows client-server architecture, so main() method should be public.
  • private :
    • The stronger access specified which restricts the data to be come out of class.
    • Private data can not be accessible even through it's class object.
  • protected :
    • The partial public and partial private access specifier.
    • It follows public property as the data can be come out of the class but only in inheritance.
    • It private property can not be accessible through class object.
  • default :
    • It is not keyword.
    • It works same as public up-to one working folder.
    • Otherwise it becomes private.


Static

Static keyword is used to load the main method into primary memory by JVM[Java Virtual Machine].

void

This keyword is used as a return type of method is not going on return any value.

main

A flag which is used as indicator of starting point of program for compiler and inter-printer.
Java Notes For Java Beginner
The classes which are used to convert the string value (Actually numeric) into it's respective data type, are called as wrapper classes.


Classes
  • Integer
  • Float
  • Character
  • Long
  • Short
  • Byte
  • Boolean
  • Double
And there respective static parsing methods are :
  • parseInt()
  • parsefloat()
  • parselong()
  • parseShort()
  • parseDouble()
  • parseByte()
  • parseChar()
  • parseBoolean()


Integer.parseInt()

It converts the string value into integer type.

float.parsefloat()

It converts the string value into float type.


Write a program to print addition of two numbers passed through command line.

class Add1
{
 public static void main(String args[])
 {
  int n=args.length;
  if(n>1)
  {
  int a,b,c;
  a=Integer.parseInt(args[0]);
  b=Integer.parseInt(args[1]);
  c=a+b;
  System.out.println("Addition is "+c);
  }
         else
   System.out.println("Please enter two arguments");
 }
}

How To Run ?
javac Add1.java
java Add1 10 30
Java Notes For Java Beginner
The arguments which are passed through command line at run-time and which are stored in the array of string class in main method are called as command line arguments.

Write a program to pass command line arguments.

class E
{
 public static void main(String args[])
 {
  int n=args.length;
  int i;
  if(n>0)
  {
   for(i=0;i<n-1;i++)
   System.out.println(args[i]);
  }
  else
  {
   System.out.println("Please enter values");
  }
 }
}

How To Run ?
javac E.java
java E 123 567 NSB
Java Notes For Java Beginner
String : A built in class, whose object is used to store the set of characters, is called as string.

Example :
String S1=new String("Hello");
or
String S1="Hello";


String manipulation methods:

  1. length() :- This method is used to return the number of characters of a given string.
  2. trim() :-  This method is used to trim or remove the white spaces from Right Hand Side and Left Hand Side of given string.
  3. toUpperCase() :- This method is used to convert the given string in Upper case.
  4. toLowerCase() :- This method is used to convert the given string in Lower case. 
  5. equals() :- This method is used to compare two string according to there ASCII value for equality.
    [It returns true if both the string are same & otherwise return false]
  6. CompareTo() :- This method is also used to compare two string according to ASCII values.
    [It's return type is Integer]
    Example:
    int i=s1.compareTo(s2);

    if it return > 0 value then s2>s1
    if it return < 0 value then s1>s2
    if it return = 0 value then s1=s2

  7. CompareToIgnoreCase() :- It work is same as above method with ignoring the case sensitivity.


Write a program to implement all the methods of string class.

class str
{
 public static void main(String args[])
 
 {
  String s1="Good morning";
  System.out.println(s1);
  
  String s2=s1.trim();
  System.out.println(s2);
  
  System.out.println("length of s1="+s1.length());
  System.out.println("length of s2="+s2.length());
  
  String s3=s2.toUpperCase();
  String s4=s2.toUpperCase();
  System.out.println("S3= "+s3);
  System.out.println("S4= "+s4);
  
  if(s3.equals(s4))
  System.out.println("Both the string are same");
  else
  System.out.println("Both the string are not same");
  
  int i=s3.compareToIgnoreCase(s4);
   if(i<0 s4="" system.out.println="">s3");
   else if(i>0)
   System.out.println("s3>s4");
   else if(i==0)
   System.out.println("s3 = s4"); 
 }
}


Note : String is a native or peer class, so the changes occurred in same other location.

To perform the changes on same location, we have to follow the StringBuffer class.

It dynamically increment or decrements the size of String object.



StringBuffer class methods

  1. append(String) :- This method is used to join or append the new string in previous string.
  2. insert(index, string) :- This method is  used to insert the new string on the specified index of previous string.
  3. setCharAt(index, char) :- This method set or replace the specified index character with the new character.
  4. reverse() :- This method is used to convert the given string in reverse.


Write a program to implement all the methods of stringBuffer class.

class str1
{
 public static void main(String args[])
 {
  StringBuffer sb=new StringBuffer("Hello morning");
  System.out.println(sb);
  
  sb.append("Bye");
  System.out.println(sb);
  
  sb.insert(13, " ");
  System.out.println(sb);
  
  sb.insert(6, "Good");
  System.out.println(sb);
  
  sb.insert(10, " ")
  System.out.println(sb);
  
  sb.setCharAt(10,"_");
  System.out.println(sb);
  
  
  System.out.println(sb.reverse());
 }
}

Java Notes For Java Beginner

Array : A homogeous set of finit elements which is stored in a continues memory location under certain name, is called array.

Example:
int a[]=new int[5];
a[0] =4;
a[1] =6;
a[2] =8;
a[3] =10;
a[4] =15;

or

int a[]={4,6,8,10,15};


length: This field is used to return the number of elements of a given array.

Write a program to sort given array in ascending order using selection sort technique.

class sort
{
 public static void main(String args[])
 {
  int a[]={55,33,11,22,44}
  int n=a.length;
  int i,j,temp;
  System.out.println("Before swapping array elemts");
  
  for(i=0;i<=n-1;i++)
   System.out.println(a[i]);
   
   for(i=0;i<=n-2;i++)
   {
    for(j=i+1;j<=n-1;j++)
    {
     if(a[i]>a[j])
     {
      temp=a[i];
      a[i]=a[j];
      a[j]=temp;
     }
    }
   }
  System.out.println("Sorted array elements are :");
  System.out.println(a[i]);
 }
}
Java Notes For Java Beginner

Static keyword is used to load the class data into primary memory first to the object. As it is directly loaded into memory, it can be accessible directly.

Note : Static data is shareable to all the objects of same class.

Write a program to access static & non-static data of class.
class class

{
    int x; //non-static
    static int y; //static
    public static void main (String args[])
    {
        c c1=new c();               //New object created [1st]
        system.out.println(c1.x);   //called using c1 object
        system.out.println(c1.y);   //called using c1 object
        system.out.println(c.y);    //called using class
        system.out.println(x);      //directly called
 
        c1.x++;                     //Operation performed using c1 object [Value becomes x=1]
        c1.y++;                     //Operation performed using c1 object [Value becomes y=1]
       
        c c2=new c();               //New object created [2nd]
        system.out.println(c2.x);   //called using c2 object
        system.out.println(c2.y);   //called using c2 object
    }
}


Output:
           0
           0
           0
           0
           0
           1

Static data can be accessible by three ways.

  1. Using class object.
  2. Using class name.
  3. Directly.

Note : Non-static data can be accessible only through it's class object.

System.out.println() //Statement

System is a built in class and out is static field of it. The combination of this two will send the data from editor to keyboard memory. This memory is the space reserved on primary memory for every java application. The println() method of print stream class sends the data from keyboard memory to console.

PrintStream class have two methods

1> println(): This method send the corsor to the next line after printing the data.

Example:
class D
{
    public static void main(String args[])
    {
        System.out.println("\t\t Hello\t\t\t");
        System.out.println("How Are You?");
        System.out.println("Bye...");
    }
}

Output:
         Hello
    How Are You?
    Bye...

2> print(): It remains cursor on the same line after printing.


Example:
class add
{
    public static void main(String args[])
    {
        int a,b,c;
        a=10;
        b=20;
        c=a+b;
       
        System.out.println(C);
        System.out.println("Addition is "+c);
        System.out.println("Addition of "+a" and "+b" is "+c);
        System.out.println(a+" + "+b+" = "+c);
    }
}

Output:
    30
    Addition is 30
    Addition of 10 and 20 is 30
    10 + 20 = 30
   
Note : + sign is used as separator in system.out.println statement...