Java Fundamentals
Sohail Shaghasi
[email protected]
Course Overview
What is computer program?
What is high level and low level language?
Introduction to Java.
What is an IDE?
How Java program Gets executed (Java life cycle)?
What is Variable?
What is Variable Scope?
What is Constant?
[email protected]
Course Overview Cont.
What is Operator?
What is primitive type?
What is String?
What is array?
What are control statements (if / else, Switch , For, while, Break/Continue)?
What is function/Method?
What is Class ?
What is Constructor?
What is Object ?
What is Access Modifiers?
What is OOP?
Pillars of OOP
[email protected]
What is Computer Program?
Program is a set of instruction given to a computer to perform a specific task.
Some examples of computer programs:
A web browser like Mozilla Firefox and Apple Safari can be used to view web pages
on the Internet.
An office suite can be used to write documents or spreadsheets.
Video games are computer programs.
[email protected]
What is High level and Low Level
language?
Characteristics of High level languages:
Easier to understand and user friendly.
Extremely portable.
Can be debugged in an easier manner.
Characteristics of Low level language:
Extremely difficult to understand.
Nearer to Machine code.
Appropriate for developing new operating system.
Appropriate for microcontrollers programming.
[email protected]Introduction to Java
Programming language based on C and C++.
Designed to be written once and run anywhere (cross platform).
Runs on virtual machine.
Very similar to C#.
Java is Object Oriented.
[email protected]
What is an IDE?
IDE means
Integrated Development Environment.
An IDE is software application.
Eclipse, Netbeans and Microsoft Visual studio are IDEs.
You can do many things using IDE
Implement databases.
Design User interfaces.
Program an application.
Compile/build an application
Test an application.
Debug an application.
Diagraming.
[email protected]
Java life Cycle
How Java program gets executed?
[email protected]
What is Variable?
Just like a variable in a math equation
1+3=4
1+x=?
Without variables programs would be non-interactive
Variables allow us to store data in our program
Opposite of a constant
Syntax:
The number 3 is a constant
X is a variable
[email protected]
What is Variable Scope?
Global Variables:
Declared outside any function.
Local Variable:
Declare inside a function.
To simplify things, just think of the scope as anything
between the curly braces {}. The outer curly braces are
called the outer blocks , and the inner curly braces are
called inner blocks.
[email protected]
What is constant?
It is a variable whose value cant change.
[email protected]
What is Operator?
Assignment
=
+=
-=
*=
/=
%=
[email protected]
Operators Cont
Relational
>
<
>=
<=
==
!=
[email protected]
Operators Cont.
Logical
&&
||
!
[email protected]
What are primitive types?
What is Array?
An array is a group of contiguous or related data items that share a common name.
Used when programs have to handle large amount of data
Each value is stored at a specific position
Position is called a index or superscript. Base index = 0 0 69
1 61
index
2 70
3 89 values
4 23
5 10
[email protected]
6 9
Array Cont.
Like any other variables, arrays must declared and created before
they can be used. Creation of arrays involve three steps:
Declare the array
Create storage area in primary memory.
Put values into the array (i.e., Memory location)
String[] students = new String[10];
String[] students = new String []{st1, st2, st3};
[email protected]
What are Control statements?
if else
switch
while
do while
For
For Each
break
continue
[email protected]
If - else
if(conditional_statement)
{
statement to be executed if conditional_statement becomes true
}
Else
{
statements to be executed if the above conditional_statement
becomes false
}
[email protected]
Switch
switch (n)
{
case expression1:
// code to be executed if n is equal to expression1;
break;
case expression :
// code to be executed if n is equal to expression1;
break;
default:
// code to be executed if n doesn't match any expression1
}
[email protected]
Switch statement Flowchart
[email protected]
While loop
while(condition_statementtrue)
{
Statements to be executed when the condition becomes true and execute
them repeatedly until condition_statement becomes false.
}
E.g.
int x = 2;
while(x>5){
system.out.println(value of x:+x);
x++;
}
[email protected]
Do while loop
do
{
statements to be executed at least once without looking at the condition.
The statements will be executed until the condition becomes true.
}
while(condition_statement);
[email protected]
Comparing while and do-while loops
[email protected]
For loop
for(initialization; condition; increment/decrement){
statements to be executed until the condition becomes false
}
E.g:
for(int x = 0; x < 10; x++)
{
System.out.println(value of x:+x);
}
[email protected]
Break
Break is used in the loops and when executed, the control of the execution will come out of the
loop.
E.g:
for(int i=1;i<50;i++)
{
if(i%11==0)
{
System.out.println(Before breaking the loop);
break;
}
System.out.println(Value of i:+i );
}
[email protected]
Continue
Continue makes the loop to skip the current execution and continues with the next iteration.
E.g:
for(int i=1;i<50;i++)
{
if(i%11==0)
{
System.out.println(Before breaking the loop);
continue;
}
System.out.println(Value of i:+i );
}
[email protected]
What is function/Method?
A function is section of a program that has a name and performs a specific
task.
Function definition:
Return Type A function may return a value
Function Name This is the actual name of the function.
Parameter List A parameter is like a placeholder. When a function is
invoked, you pass a value as a parameter.
Function Body collection of statements that describes what the function
does.
[email protected]
Function Cont.
parameters
Function
Access Return
name
Modifier type
Method body
return
[email protected]
What is Class?
Class can be thought of as a template, a prototype or a blueprint of an
object.
It is a fundamental structure in Object oriented programming.
Two types of class members:
Fields (properties or attributes)
Methods
Specify the operations.
[email protected]
What is Constructor?
Constructor is a method where you place all the initialization, it has the same
name as the class.
When you create an object, you actually invoke the class constructor.
new Operator
Allocated a memory for that object and returns a reference of that memory
location to you.
Dot operator
It allows you to access public properties and public methods of a respective
class.
[email protected]
Constructor cont.
[email protected]
What is Object?
An object is an instance of a class.
To create an object the new operator is used.
For example if you want to create an instance of class String, we write the
following code,
String str = new String(Hello World);
Or also equivalent to
String str = Hello World;
[email protected]
Object cont.
[email protected] Object
What are Access Modifiers?
Access within class within package outside outside
Modifier package by package
subclass only
Private Yes No No No
Default Yes Yes No No
Protected Yes Yes Yes No
Public Yes Yes Yes Yes
[email protected]
What is OOP?
object-oriented programming:
A programming paradigm where a software system is represented as a
collection of objects that interact with each other to solve the overall task.
[email protected]
Four Pillars of OOP
Object-oriented programming is based on these 4 pillar:
Abstraction
Polymorphism
Inheritance
Encapsulation
APIE
[email protected]
Abstraction
In java, we can have an abstract class without any abstract method. This
allow us to create classes that cannot be instantiated, but can only be
inherited.
Abstract classes cannot be instantiated, means we cant create object to
Abstract class.
We can create subclasses to Abstract classes.
[email protected]
Polymorphism
Polymorphism is the capability of a method to do different things based on
the object.
[email protected]
Inheritance
One of the most effective feature of OOP paradigm.
Establish link/connectivity between 2 or more classes.
Permits sharing and accessing properties from one to another class.
To establish this relation java uses extends keyword.
[email protected]
Encapsulation
Encapsulation is the technique of making the fields in a class private and
providing access to the fields via public methods.
If a field is declared private, it cannot be accessed by outside classes.
Encapsulation is referred to as data hiding.
[email protected]