0% found this document useful (0 votes)
32 views

Java Learning Module

This document provides an introduction to the Java programming language. It discusses what a programming language is and defines Java's key components like the JDK, JRE, and JVM. It also covers Java data types, operators, and how to take input using the Scanner class.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

Java Learning Module

This document provides an introduction to the Java programming language. It discusses what a programming language is and defines Java's key components like the JDK, JRE, and JVM. It also covers Java data types, operators, and how to take input using the Scanner class.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

Welcome to 21st java sinhala ය

What is programming Language.?

Set of instructions to obtaining out put from the computer

Programming Languages

High Level Programming Languages Low Level Programming Languages

High Human Readability Low Human Readability

java

JDK - Java Development Kit

JRE - Java Runtime Environment

JVM - Java Virtual Machine

javac java

Example.java Compile Execute


Example.class Machine Code
Compiler JVM

Source Code
Byte Code

.Java .class
Day - 1
Variable
int number = 10;

RAM

Word VLC Image Viewer JAVA Programme

10

number

Data Types

Primitive Data Types Non - Primitive Data Type

byte ((-27) - (27 - 1)) Reference Data Type


String
short ((-215) - (215 - 1))
class Example{
int ((-231) - (231 - 1)) public static void main(String args[]){
// Numbers
long ((-263) - (263 - 1)) byte b = 100;
float (Floating Points) short s = 200;
int i = 300;
double (Floating Points) long l = 400;
char (Single Character , Unicodes, ASCII Codes ) /*
boolean (true / false) Floating Points
*/
float f = 10.5F;
double d = 10.5;

// Single Character
char c = 'A';
char c1 = '\u0042';
char c2 = 78;
// True or False
boolean bool = true;
boolean bool2 = false;

// Text
String str = "Hello Java";
}
}
byte short int long float double

char

Operators
class Example{
+ Addition public static void main(String args[]){
- Subtraction int number1 = 20;
/ Division int number2 = 6;
// Addition
* Multiplication int answer = number1 + number2;
% Modulu
++ Increment // Subtraction
answer = number1 - number2;
-- Decrement // Division
double answer2 = (double)number1 / number2;

// Multiplication
X++ - PostFix answer = number1 * number2;
++X = PreFix // Modulu
answer = number1 % number2;

// Increment
number1++; // --> number1 = number1 + 1;

// Decrement
number2--; // --> number2 = number2 - 1;

int x = 10;

System.out.println(x); // 10
System.out.println(x++); // 10 PostFix
System.out.println(x); // 11
System.out.println(++x); // 12 PreFix
}
}

Scanner
import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.print("Enter Your Number : ");
int number = input.nextInt();

System.out.println();

System.out.println("Your Number : " + number);


}
}
Day - 2
import java.util.*; import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);
System.out.print("Enter Number 1 : "); System.out.print("Enter Salary : Rs.");
int number1 = input.nextInt(); int salary = input.nextInt();

System.out.print("Enter Number 2 : "); System.out.println();


int number2 = input.nextInt();
int notes = salary / 5000;
int total = number1 + number2; salary = salary % 5000;
System.out.println("5000 notes : " + notes);
System.out.println(); notes = salary / 1000;
salary = salary % 1000;
System.out.println("Total : " + total); System.out.println("1000 notes : " + notes);
}
} notes = salary / 500;
salary = salary % 500;
System.out.println("500 notes : " + notes);

notes = salary / 100;


salary = salary % 100;
System.out.println("100 notes : " + notes);

notes = salary / 50;


salary = salary % 50;
System.out.println("50 notes : " + notes);

notes = salary / 20;


salary = salary % 20;
System.out.println("20 notes : " + notes);

int coins = salary / 10;


salary = salary % 10;
System.out.println("10 coins : " + coins);

coins = salary / 5;
salary = salary % 5;
System.out.println("5 coins : " + coins);

coins = salary / 2;
salary = salary % 2;
System.out.println("2 coins : " + coins);

System.out.println("1 coins : " + salary);


}
}

How To input String using Scanner


import java.util.*; import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);
System.out.print("Enter your text : "); System.out.print("Enter your first name : ");
String text = input.nextLine(); String firstName = input.next();

System.out.println(); System.out.print("Enter your last name : ");


String lastName = input.next();
System.out.println("Your Text : " + text);
} System.out.print("Enter your home number : ");
} String homeNumber = input.next();

System.out.print("Enter your street name : ");


String street = input.next();

System.out.print("Enter your city : ");


String city = input.next();

System.out.println();

System.out.println("Your Full Name : " + firstName + " " + lastName);


System.out.println("Your Home Address : No:-" + homeNumber + ", " + street + " Rd, " +
city + ".");
}
}
IF Condition
Sometimes we have make decisions. in those cases we can use if condition

IF IF-Else
import java.util.*; import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);

System.out.print("Enter your age : "); System.out.print("Enter your age : ");


int age = input.nextInt(); int age = input.nextInt();

if(age >= 18){ if(age >= 18){


System.out.println("Elder...."); System.out.println("Elder....");
} }else{
} System.out.println("Child....");
} }
}
}

IF-Else-IF
import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

System.out.print("Enter your age : ");


int age = input.nextInt();

if(age < 18){


System.out.println("Chlid....");
}else if(age < 35){
System.out.println("Young....");
}else{
System.out.println("Elder....");
}
}
}

import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

System.out.print("Enter Number 1 : ");


int number1 = input.nextInt();

System.out.print("Enter Number 2 : ");


int number2 = input.nextInt();

System.out.println();

if(number1 > number2){


System.out.println("Maximum Number : Number 1");
}else if(number2 > number1){
System.out.println("Maximum Number : Number 2");
}else{
System.out.println("Maximum Number : Same Number");
}
}
}
Day - 3
import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

System.out.print("Enter Number 1 : ");


int number1 = input.nextInt();

System.out.print("Enter Number 2 : ");


int number2 = input.nextInt();

System.out.print("Enter Number 3 : ");


int number3 = input.nextInt();

System.out.println();

if(number1 > number2){


if(number1 > number3){
System.out.println("Maximum Number : " + number1);
}else{
System.out.println("Maximum Number : " + number3);
}
}else if(number2 > number3){
System.out.println("Maximum Number : " + number2);
}else{
System.out.println("Maximum Number : " + number3);
}

}
}

import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.print("Enter Subject Marks : ");
int marks = input.nextInt();

System.out.println();

if(marks < 0){


System.out.println("Invalid Marks");
}else if(marks > 100){
System.out.println("Invalid Marks");
}else if(marks >= 75){
System.out.println("Grade : A");
}else if(marks >= 65){
System.out.println("Grade : B");
}else if(marks >= 55){
System.out.println("Grade : C");
}else if(marks >= 35){
System.out.println("Grade : S");
}else{
System.out.println("Grade : F");
}

}
}
Loops

For Loop while Loop Do-while Loop

For Loop

class Example{
public static void main(String args[]){

for(int i = 0 ; i < 10 ; i++){


System.out.println("Hello Java");
}
}
}

*
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
class Example{ class Example{
public static void main(String args[]){ public static void main(String args[]){
for(int i = 0 ; i < 4 ; i++){ for(int i = 0 ; i < 5 ; i++){
System.out.println("* * * *"); for(int j = 0 ; j <= i ; j++){
} System.out.print("* ");
} }
} System.out.println();
}
}
}

import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

int number = 0;
int max = 0;

for(int i = 0 ; i < 5 ; i++){


System.out.print("Enter Number " + (i + 1) + " : ");
number = input.nextInt();

if(max < number){


max = number;
}
}

System.out.println();

System.out.println("Maximum Number : " + max);


}
}
Day - 4
import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

System.out.print("Enter Number of Subjects : ");


int number_of_subjects = input.nextInt();
System.out.println();

int marks = 0;
int total = 0;

for(int i = 0 ; i < number_of_subjects ; i++){


System.out.print("Enter Subject " + (i + 1) + " Marks : ");
marks = input.nextInt();

total = total + marks;


}

System.out.println();

System.out.println("Total : " + total);

double average = total / (double)number_of_subjects;

System.out.println("Average : " + average);


String result = "Fail";

if(average >= 50){


result = "Pass";
}

System.out.println("Result : " + result);


}
}

While Loop Do-While Loop


class Example{ class Example{
public static void main(String args[]){ public static void main(String args[]){
int i = 1; int i = 1;

while(i <= 10){ do{


System.out.println(i); System.out.println(i);

i++; i++;
} }while(i <= 10);
} }
} }
Switch
import java.util.*; import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);

System.out.print("Enter Anything : "); System.out.print("Enter Number 1 : ");


String anything = input.next(); int number1 = input.nextInt();

System.out.println(); System.out.print("Enter Number 2 : ");


int number2 = input.nextInt();
switch(anything){
case "A": System.out.println();
System.out.println("Apple");
break; System.out.println("A. Addition.");
case "B": System.out.println("B. Subtraction");
System.out.println("Ball"); System.out.println("C. Multiplication");
break; System.out.println("D. Division");
case "C":
System.out.println("Cat"); System.out.println();
break;
case "D": System.out.print("Please select one option : ");
System.out.println("Doll"); String option = input.next();
break;
default : System.out.println();
System.out.println("Invalid Entry.....");
} switch(option){
} case "A":
} System.out.println("Addition : " + (number1 + number2));
break;
case "B":
int sub = number1 - number2;

if(number2 > number1){


sub = number2 - number1;
}

System.out.println("Subtraction : " + sub);


break;
case "C":
System.out.println("Multiplication : " + (number1 * number2));
break;
case "D":
int div = number1 / number2;

if(number2 > number1){


div = number2 / number1;
}

System.out.println("Division : " + div);


break;
default :
}
}
}
import java.util.*;
Day - 5
class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

System.out.print("Enter Student Name : ");


String name = input.next();

System.out.print("Enter Student Address : ");


String address = input.next();

System.out.print("Enter Number of Subjects : ");


int number_of_subjects = input.nextInt();

System.out.println();

int marks = 0;
int max = 0 ;
int total = 0;

for(int i = 0 ; i < number_of_subjects ; i++){


System.out.print("Enter Subject " + (i + 1) + " Marks : ");
marks = input.nextInt();

if(max < marks){


max = marks;
}

total = total + marks;


}

boolean flag = true;


while(flag){

System.out.println();

System.out.println("A. Show Student Details.");


System.out.println("B. Show Maximum Marks.");
System.out.println("C. Show Total, Average & Result.");
System.out.println("X. Exit.");

System.out.println();

System.out.print("Please select one option : ");


String option = input.next();

System.out.println();

switch(option){
case "A":
System.out.println("Student Name : " + name);
System.out.println("Student Address : " + address);
break;
case "B":
System.out.println("Maximum Marks : " + max);
break;
case "C":
System.out.println("Total : " + total);
double average = (double)total / number_of_subjects;
System.out.println("Average : "+ average);

String result = "Pass";

if(average < 50){


result = "Fail";
}

System.out.println("Result : " + result);


break;
case "X":
System.out.println("Good bye....");
flag = false;
break;
default :
System.out.println("Please select valid option");
}
}
}
}
Break, Return & Continue

Break Return

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
for(int i = 1 ; i <= 10 ; i++){ for(int i = 1 ; i <= 10 ; i++){

if(i == 5){ if(i == 5){


break; return;
} }
System.out.println(i); System.out.println(i);
} }

System.out.println("Hello"); System.out.println("Hello");
} }
} }

Continue import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
for(int i = 1 ; i <= 10 ; i++){ Scanner input = new Scanner(System.in);

if(i == 5){ int marks = 0;


continue; int total = 0;
}
System.out.println(i); for(int i = 0 ; i < 5 ;){
} System.out.print("Enter Subject " + (i + 1) + " Marks : ");
marks = input.nextInt();
System.out.println("Hello");
} if(marks > 100){
} System.out.println();

System.out.println("Invalid Marks....");

System.out.println();

continue;
}else if(marks < 0){
System.out.println();

System.out.println("Invalid Marks....");

System.out.println();

continue;
}

total = total + marks;

i++;
}

System.out.println("Total : " + total);


}
}
String Pool

String Pool

word3 Apple

word2 Cat

word Bat

class Example{
public static void main(String args[]){
String word = "Apple";

String word2 = "Apple";

if(word == word2){
System.out.println("Same");
}

word = "Bat";

word2 = "Cat";

String word3 = "Apple";


}
}

Day - 6
Arrays
int[] numbers = new int[5];

numbers 10 20 30 40 50

index

0 1 2 3 4

Elements
class Example{ class Example{
public static void main(String args[]){ public static void main(String args[]){
int[] numbers = new int[5]; int[] numbers = new int[5];

// Initialize data to array // Initialize data to array


numbers[0] = 10; numbers[0] = 10;
numbers[1] = 20; numbers[1] = 20;
numbers[2] = 30; numbers[2] = 30;
numbers[3] = 40; numbers[3] = 40;
numbers[4] = 50; numbers[4] = 50;
// Retrive Data from array using loop
// Retrive Data from array for(int i = 0 ; i < numbers.length ; i++){
System.out.println(numbers[0]); System.out.println(numbers[i]);
System.out.println(numbers[1]); }
System.out.println(numbers[2]);
System.out.println(numbers[3]); }
System.out.println(numbers[4]); }

}
}

import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

int[] numbers = new int[5];

for(int i = 0 ; i < 5 ; i++){


System.out.print("Enter Number "+ (i + 1) + " : ");
numbers[i] = input.nextInt();
}

System.out.println();

System.out.print("All Numbers : [ ");


for(int i = 0 ; i < numbers.length ; i++){
System.out.print(numbers[i] + " ");
}

System.out.println("]");

}
}
Day - 7
import java.util.*;

class Example{
public static void main(String args[]){
Scanner input = new Scanner(System.in);

while(true){
System.out.print("Do you want to add new student.?(Y/N) : ");
String letter = input.next();

System.out.println();

switch(letter){
case "Y":
System.out.print("Enter Student Name : ");
String name = input.next();

System.out.print("Enter Student Address : ");


String address = input.next();

System.out.print("Enter Number of Subjects : ");


int number_of_subjects = input.nextInt();

System.out.println();
int[] marks = new int[number_of_subjects];

for(int i = 0 ; i < number_of_subjects ; i++){


System.out.print("Enter Subject " + ( i + 1 ) + " Marks : ");
marks[i] = input.nextInt();
}

boolean flag = true;

while(flag){
System.out.println();

System.out.println("A. Show Student Details.");


System.out.println("B. Show All Marks.");
System.out.println("C. Show Maximum Marks.");
System.out.println("D. Show Total, Average & Result.");
System.out.println("X. Exit.");

System.out.println();

System.out.print("Please select one option : ");


letter = input.next();

System.out.println();

switch(letter){
case "A":
System.out.println("Student Name : " + name);
System.out.println("Student Address : " + address);
break;
case "B":
for(int i = 0 ; i < marks.length ; i++){
System.out.println("Subject " + (i + 1) + " Marks : " + marks[i]);
}
break;
case "C":
int max = 0;

for(int i = 0 ; i < marks.length ; i++){


if(max < marks[i]){
max = marks[i];
}
}
System.out.println("Maximum Marks : " + max);
break;
case "D":
int total = 0;

for(int i = 0 ; i < marks.length ; i++){


total = total + marks[i];
}

double average = (double)total / number_of_subjects;

String result = "Pass";


if(average < 50){
result = "Fail";
}

System.out.println("Total : " + total);


System.out.println("Average : " + average);
System.out.println("Result : " + result);
break;
case "X":
System.out.println("Good bye....");
flag = false;
break;
default :
System.out.println("Invalid Entry....");
}
}

break;
case "N":
System.out.println("Have a nice day");
return;
default :
System.out.println("Please enter valid letter....");
}

System.out.println();
}
}
}
class Example{
public static void main(String args[]){
int[] arr = {10,20,30,40,50};

int[] arr2 = arr;

arr[0] = 100;

arr2[4] = 500;

for(int i = 0 ; i < arr.length ; i++){


System.out.print(arr[i] + " "); // 100 20 30 40 50 or 100 20 30 40 500
}

System.out.println();

for(int i = 0 ; i < arr2.length ; i++){


System.out.print(arr2[i] + " "); // 10 20 30 40 500
}
}
}

arr 100 20 30 40 500

arr2

class Example{
public static void main(String args[]){
int[] arr = {10,20,30,40,50};

int[] arr2 = new int[arr.length];

for(int i = 0 ; i < arr2.length ; i++){


arr2[i] = arr[i];
}

arr[0] = 100;

arr2[4] = 500;

for(int i = 0 ; i < arr.length ; i++){


System.out.print(arr[i] + " "); // 100 20 30 40 50
}

System.out.println();

for(int i = 0 ; i < arr2.length ; i++){


System.out.print(arr2[i] + " "); // 10 20 30 40 500
}
}
}

arr 100
10 20 30 40 50

arr2 10 20 30 40 500
2D Arrays
int[][] studentMarks = new int[3][4];

0 1 2

studentMarks

0 1 2 3

0 1 2 3
0 1 2 3
64 76 45 23

class Example{
public static void main(String args[]){ class Example{
int[][] studentMarks = new int[3][4]; public static void main(String args[]){
int[][] studentMarks = {{34,54,76},{43,54,65,76,87},{23,54,65,93}};
// Initialize value to 2D array
studentMarks[0][0] = 64; // Retrive Data in 2D array using loop
studentMarks[0][1] = 76; for(int i = 0 ; i < studentMarks.length ; i++){
studentMarks[0][2] = 45; for(int j = 0 ; j < studentMarks[i].length ; j++){
studentMarks[0][3] = 23; System.out.print(studentMarks[i][j] + " ");
}
studentMarks[1][0] = 64; System.out.println();
studentMarks[1][1] = 76; }
studentMarks[1][2] = 45; }
studentMarks[1][3] = 23; }

studentMarks[2][0] = 64;
studentMarks[2][1] = 76;
studentMarks[2][2] = 45;
studentMarks[2][3] = 23;
}
}
Day - 8
Methods

class Example{

public static void printLine(){ // Method Declaration


System.out.println("=========");
}

public static void main(String args[]){


System.out.println("Kamal");
System.out.println("Nimal");

printLine(); // Calling Statement

System.out.println("Saman");
System.out.println("Amal");

printLine();
System.out.println("Sachini");
System.out.println("Sewwandi");

printLine();
}

import java.util.*;

class Example{

public static void calculator(){


Scanner input = new Scanner(System.in);

System.out.println();

System.out.print("Enter Number 1 : ");


int number1 = input.nextInt();

System.out.print("Enter Number 2 : ");


int number2 = input.nextInt();

System.out.println();

System.out.println("Total : " + (number1 + number2));

System.out.println();
}

public static void main(String args[]){


System.out.println("Start.......");
calculator();
System.out.println("End.......");
}

}
Parameterized Methods

class Example{

public static void main(String args[]){


printAnything("Java",10); // Method Argument
}

public static void printAnything(String text,int number){ // Parameters --> Parameterized Method
System.out.println("Your Text : " + text);
System.out.println("Your Number : " + number);
}

import java.util.*;

class Example{

public static void main(String args[]){


Scanner input = new Scanner(System.in);

System.out.print("Enter Number 1 : ");


int number1 = input.nextInt();

System.out.print("Enter Number 2 : ");


int number2 = input.nextInt();

System.out.println();

calculateTotal(number1, number2);
}

public static void calculateTotal(int number1, int number2){


System.out.println("Total : " + (number1 + number2));
}

class Example{

public static void main(String args[]){


int[] arr = {10,20,30,40,50};

for(int i = 0 ; i < arr.length ; i++){


System.out.print(arr[i] + " ");
}
arr 15 25 35 45 55
addFive(arr);

System.out.println();

for(int i = 0 ; i < arr.length ; i++){


System.out.print(arr[i] + " ");
}
} ref

public static void addFive(int[] ref){


for(int i = 0 ; i < ref.length ; i++){
ref[i] = ref[i] + 5;
}
}

}
Return Type Methods

class Example{

public static void main(String args[]){


System.out.println(getWord());
}

public static String getWord(){


return "Hello Java";
}

Day - 9

import java.util.*; import java.util.*;

class Example{ class Example{


public static void main(String args[]){ public static void main(String args[]){
Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);

System.out.print("Enter Subject Marks : "); System.out.print("Enter Subject Marks : ");


int marks = input.nextInt(); int marks = input.nextInt();

System.out.println(); System.out.println();

System.out.println("Grade : " + getGrade(marks)); System.out.println("Grade : " + getGrade(marks));


} }

public static String getGrade(int marks){ public static String getGrade(int marks){
if(marks >= 75){
return "A"; String grade = "F";
}else if(marks >= 65){
return "B"; if(marks >= 75){
}else if(marks >= 55){ grade = "A";
return "C"; }else if(marks >= 65){
}else if(marks >= 35){ grade = "B";
return "S"; }else if(marks >= 55){
} grade = "C";
}else if(marks >= 35){
return "F"; grade = "S";
} }
}
return grade;
}
}
Method Overloading
Same name different parameters

class Example{
public static void main(String args[]){
}

public static void myMethod(){


System.out.println("My Method");
}

public static void myMethod(int x){


System.out.println("My Method(int)");

public static void myMethod(String s){


System.out.println("My Method(String)");

public static void myMethod(int x, int y){


System.out.println("My Method(int,int)");

public static void myMethod(String s, int y){


System.out.println("My Method(String,int)");

public static void myMethod(int y,String s){


System.out.println("My Method(int,String)");

}
}

Classes
Blue print of Object

class MyClass{

}
Objects
Instance of Class

class Example{
public static void main(String args[]){ class MyClass{
MyClass myClass1 = new MyClass(); int x = 10; // instance variables, attributes, global variables, class variables,
MyClass myClass2 = new MyClass();
public void myMethod(){
myClass2.x = 20; int y = 20; // local variables
System.out.println("My Method");
myClass1.myMethod(); }
}
System.out.println(myClass1.x);
System.out.println(myClass2.x);
}
}
Template /
Objects Class Object

int x = 20; int x = 10;


Main Class
myMethod(); myMethod();

MyClass.java
int x = 10;
myMethod();
myClass2

myClass1

Stack Heap Hard Disk

Constructor
class MyClass{
MyClass(){
System.out.println("Create MyClass Object");
}
}

Constructor Overloading

class MyClass{
MyClass(){ // Default Constructor
System.out.println("Constructor");
}

MyClass(int x){ // Parametrized Constructor


System.out.println("Constructor(int)");
}

MyClass(int x,String s){ // Parametrized


Constructor
System.out.println("Constructor(int,String)");
}
}
Instance Block

class MyClass{
{
System.out.println("Instance Block");
}

MyClass(){
System.out.println("Constructor");
}

{
System.out.println("Instance Block 2");
}
}

Static Block

class MyClass{
{
System.out.println("Instance Block");
}

MyClass(){
System.out.println("Constructor");
}

static{
System.out.println("Static Block");
}
}

Static Keyword
class Example{
class MyClass{ public static void main(String args[]){
int x = 100; MyClass myClass1 = new MyClass();
static int y = 200; MyClass myClass2 = new MyClass();
}
myClass1.x = 1000;
myClass1.y = 2000;

System.out.println("MyClass 1 X : " + myClass1.x);


System.out.println("MyClass 1 Y : " + myClass1.y);
System.out.println("MyClass 2 X : " + myClass2.x);
System.out.println("MyClass 2 Y : " + myClass2.y);
}
}

int x = 100;
int x = 100; Main Class
static int y = 2000;

MyClass.java

int x = 1000;
myClass2

myClass1

Stack Heap Hard Disk


Day - 10
Access Modifiers

public int publicVariable = 100; // Public --> Everywhere in project


private int privateVariable = 200; // Private --> Only Own Class/ Only Declared Class
protected int protectedVariable = 300; // Protected --> Same Package & Sub Classes
int defaultVariable = 400; // Package Default --> Same Package

OOP - Object Oriented Programming

1. Encapsulation
2. Inheritance
3. Polymorphism
4. Abstraction

1. Encapsulation - Protect Data / Wrapup Data

How to fully encapsulate java class (Step by Step)

1. Private Attributes
2. Create Full Arg Constructor and no Arg Constructor
3. Create Setters and Getters

public class Customer {


private String name;
private String address;
private String contact;
private int age;

Customer(){ // Default Constructor / No Arg Constructor

Customer(String name,String address,String contact,int age){ // Full Arg Constructor


this.name = name;
this.address = address;
this.contact = contact;
this.age = age;
}

public void setName(String name){ // Setter Method


this.name = name;
}

public String getName(){ // Getter Methods


return name;
}
}

Real world Example for Encapsulation : - Capsule


Day - 11

2. Inheritance - Inherit attributes and methods (Class members) from class to another class

Super Class A.Class

Sub Class B.Class

Super Class
public class Animal {
public String eye = "Eye";
public String mouth = "Mouth";

public void eat(){


System.out.println("Eat");
}

public void breath(){


System.out.println("Breath");
}
}

Sub Class
public class Dog extends Animal{
}

Super Class Animal.class

Super
Sub Class Dog.class Rabbit.class Sub Class
Class

Puppy.class Sub Class

Real world Example for Inheritance : - Father and Son


3. Polymorphism - Single Interface in many forms

Polymorphism

Compile Time Polymorphism Run Time Polymorphism


Method Overloading Method Overriding

Same name different parameters Same name Same parameters

public class CompileTimePolymorphism { Super Class


public class Animal {
public void myMethod(){
public void move(){
System.out.println("My Method");
} System.out.println("Common Movement");
}
public void myMethod(int x){ }
System.out.println("My Method(int)");
}

public void myMethod(int x,String s){


System.out.println("My Method(int,String)");
} Sub Class
public class Rabbit extends Animal{
public void myMethod(int x,String s,int y){ public void move(){
System.out.println("My Method(int,String,int)"); System.out.println("Hop.... Hop.... Hop....");
} }
}
}

Real world Example for Polymorphism :- Woman acts many characters


4. Abstraction - Data Hide / Hide implementation of methods

1. Abstract Methods.
2. Abstract Classes.
3. Fully Abstract Classes.
4. Interfaces.

1. Abstract Method

public abstract void myMethod();

2. Abstract Class
public abstract class TestClass {

public abstract void myMethod();

public void testMethod(){


System.out.println("test method");
}
}

3.Fully Abstract Class

public abstract class TestClass {

public abstract void myMethod();

public abstract void testMethod(int x);

public abstract int myMethod(int x);


}

4. Interfaces

Fully Abstract Class = Interface


public interface Test {
public void myMethod();

public int myMethod(int x);


}

Real world Example for Abstraction :- Smart Phone, Remote


Day - 12

DBMS - Database Management System

JDBC SQL
Programme
Java Database Connectivity Structural Query Language
Database

java mySQL

Server

DB1 DB2 DB3 DB4

DB5 DB6 covid_shop

Client

CRUD Operation
C - Create
R - Read
U - Update
D - Delete
RDBMS - Relational Database management system

1. One To One
2. One To Many
3. Many To Many

1. One To One

Parent Table member car Child Table


1 1

Primary Key

2. One To Many

Parent Table member car Child Table


1 M

Primary Key

Parent Table
3. Many To Many

One To Many + One To Many = Many To Many

Parent Table member car


M M

Primary Key Primary Key

member_car

member_id car_number

Associate Table M001 spAAA-1010 M001-spAAA-1010

M001 spBBB-2020
Child Table
M002 spAAA-1010

M002 spBBB-2020

Primary Key

Associate Key / Embded Key

Join Queries
1. Inner Join
2. Left Join
3. Right Join
4. Full Outer Join

1. Inner Join

Table 1 Table 2

Return Values that have matching in both tables


2. Left Join

Table 1 Table 2

Return all the records in left table and matched values in right table

3. Right Join

Table 1 Table 2

Return all the records in right table and matched values in left table

4. Full Outer Join

Table 1 Table 2

Return All the records in either matching in both tables

You might also like