Java Programming Using Netbeans IDE

Java Programming using Netbeans IDE (Explore more details by clicking on Read More....)

Part 1: Introduction to Java Programming


Here's the link for complete playlist of videos on Java Programming using Netbeans IDE for beginners...

https://youtube.com/playlist?list=PL_VWo2triBgkAxZvM-PwqF1UkvKKWQJgW

Free notes on Java Programming in PDF:

Java as Object Oriented Programming

Java - GUI Programming using Netbeans 

Advanced Java Programming 

Netbeans Data Connectivity with MySQL Database  

Notes:

What is JAVA?

JAVA is an Object Oriented programming language as well a platform. By using JAVA, we can write Platform independent application programs, which can run on any type of OS and Hardware. JAVA is designed to build Interactive, Dynamic and Secure applications on network computer system.

Java facilitates development of Multilingual applications because JAVA uses 2-Byte UNICODE character set, which supports almost all characters in almost all languages like English, Chinese, Arbic etc.

History of JAVA

JAVA was developed by James Gosling at Sun Microsystems under the Green project to write applications for electronic devices like TV-Set Top Box etc. The language was initially called Oak and later renamed with Java.
In 1991, James Gosling developed Oak to program consumer electronic devices
In 1995, Java Development Kit (JDK) 1.0 was released by the Sun Microsystems and JAVA used as a part of Netscape web browser to facilitate Internet Applications.
In 1998, Sun introduced “Open” source community and produces JDK 1.2 (Java 2) which was released as J2EE, J2SE,J2ME version.
In 2006, Sun declared Java as Free & Open Source Software (FOSS) under GNU-GPL and NetBeans IDE was released.
In 2010, Sun Microsystems was owned by Oracle Corporation and now Java Project is being governed by the Oracle.

Characteristics of JAVA

  • Object Oriented Language
  • Java is Object Oriented Language (a real-world programming style)
  • Open Source Product: It is Open Source i.e. freely available to all with no cost.
  • Write Once Run Anywhere (WORA): JAVA Program can be run on any type of H/W and OS platforms i.e. Java programs are platform independent.
  • Light Weight Code: Big applications can be developed with small code.
  • Security: JAVA Programs are safe and secure on Network.
  • Interpreter & Compiler based Language: JAVA uses both Compiler and Interpreter (JVM) to produce portable and platform-independent object code.
  • Built-in Graphics & Supports Multimedia: JAVA is equipped with Graphics feature. It is best for integration of Audio, Video and graphics & animation.

Why JAVA is Platform Independent?

A program written in HLL must be converted into its equivalent Machine code, so that computer can understand and execute. This conversion is known as Compilation. Generally, the converted machine code depends on the structure of H/w and OS platform. So that a Windows program will not work on UNIX, or LINUX or Mac platform etc. Since they are Platform dependent.
A program written in JAVA is platform-independent i.e. they are not affected with changing of OS. This magic is done by using Byte code. Byte code is independent of the computer system it has to run upon. Java compiler produces Byte code instead of native executable code which is interpreted by Java Virtual Machine (JVM) at the time of
execution.

Basics of GUI Applications
How GUI application works ?

Graphical User Interface (GUI) based application contains Windows, Buttons, Text boxes, Dialogue boxes and Menus etc. known as GUI components. While using a GUI application, when user performs an action, an Event is generated which causes a Message sent to application to take action.

What is Event ?
An Events refers to the occurrence of an activity by user like click, double click etc.
What is Message ?
A Message is the information/request sent to the application when event occurs.

GUI in JAVA

In JAVA, the GUI programming is done through Swing API (Application Programming Interface) which enables look-and feel (L&F) environment. Swing Controls are available with JAVA-SE as a part of Java Foundation Classes (JFC).
A GUI application in JAVA contains three basic elements.-

  • Graphical Component (Event Source):
    It is an object that defines a screen element such as Button, Text field, Menus etc. They are source of the Events. In GUI terminology, they are also known as Widget (Window Gadget). It can be container control or child control.
  • Event:
    An Event (occurrence of an activity) is generated when user does something like mouse click, dragging, pressing a key on the keyboard etc.
  • Event Handler Method:
    It contains method/functions which is attached to a component and executed in response to an event. In Java, Listener Interface stores all Event-response-methods or Event-Handler methods.

Basic Graphical Controls of JAVA(Swing controls)

The Java offers various Swing controls to facilitate development of GUI applications. Most commonly used controls are:

  • jFrame: Used as a Basic Window or form.
  • jLabel: Allows Non-editable text or icon to be displayed.
  • jTextField: Allows user input. It is editable through text box.
  • jButton: An action is generated when pushed.
  • jCheckBox: Allow user to select multiple choices.
  • jRadioButton: They are option button which can be turned on or off. These are suitable for single selection.
  • jList: Gives a list of items from which user can select one or more items.
  • jComboBox: It gives dropdown list of items with facility to add new items. It is combination of jList and jTextField.
  • jPanel: It is container controls which contains other controls using a frame.
  • A control which holds other component (child) controls, is called Container Control e.g. JFrame, jPanel, jDialog etc.
A Form and basic controls

Events Handling in JAVA GUI Application
An event is occurrence of some activities either initiated by user or by the system. In order to react, you need to implement some Event handling system in your Application. Three things are important in Even Handling-
Event Source: It is the GUI component that generates the event, e.g. Button.
Event Object or Message: It is created when event occurs. It contains all the information
about the event which includes Source of event and type of event etc.
Event Handler (Event Listener) Method: It is implemented as in the form of code. It receives Event Message and handles events through Listener Interface.

How to use Event Handlers in NetBeans
Right Click on desired control of the Form in Design view. Choose desired Event from the Context Menu and its Sub Menu.
When you click on desired Event, it opens source Code editor with default Handler Name, where you can type TO DO code for the Handler. ActionPerformed is commonly used Listener. You will found a code window along with prototyped method to perform actions defined by you. You may write commands to be executed in //TODO section.


JAVA Tokens
The smallest individual unit in a program is known as Token. It may any word, symbols or punctuation mark etc. Following types of tokens used in Java-

  • Keywords
  • Identifiers
  • Literals
  • Punctuators (; [] etc)
  • Operators (+,-,/,*, =, == etc.)

Keywords in Java
Keywords are the reserve words that have a special meaning to the compiler. Key words can’t be used as identifiers or variable name etc. Commonly used key words are char, long, for, case, if, double, int, short, void, main, while , new etc.

Identifiers in Java
Identifiers are fundamental building block of program and used as names given to variables, objects, classes and functions etc.
The following rules must be followed while using identifiers.

  • Identifiers may have alphabets, digits and dollar ($), underscore (_) sign.
  • They must not be Java keywords.
  • They must not begin with digit.
  • They can be of any length.
  • They are Case Sensitive ie. Age is different from age.

Example of Valid identifiers- MyFile, Date9_7_7, z2t09, A_2_Z, $1_to_100, _chk etc.Example of Invalid identifiers- Date-RAC, 29abc, My.File, break, for

Literals in Java
Literals or constants are data items that have fixed data value. Java allows several types of literals like-

  • Integer Literals
  • Floating Literals
  • Boolean Literals
  • Character Literals
  • String Literals
  • The null literals

Integer Literals
An integer constant or literals must have at least one +/- digit without decimal point. Java allows three types of integer literals –

  • Decimal Integer Literals (Base 10) e.g. 1234, 41, +97, -17 etc.
  • Octal Integer Literals (Base 8) e.g.010, 014 (Octal must start with 0)
  • Hexadecimal Integer Literals (Base 16) e.g. 0xC, 0xab (Hex numbers must starts with 0x)
  • L or U suffix can used to represent long and unsigned literals respectively.

Floating / Real Literals
A real literals are fractional numbers having at least one digit before and after decimal point with + or – sign.
The following are valid real numbers-
2.0, 17.5, -13.0. -0.00626
The following are invalid real numbers-
7, 7. , +17/2 and 17,250.26 etc.
A real literals may be represented in Exponent form having Matissa and exponent with base 10 (E). Mantissa may be a proper real numbers while exponent must be integer.
The following are valid real in exponent form-
152E05, 1.52E07, 0.152E08, -0.12E-3, 1.5E+8
The following are invalid real exponent numbers-
172.E5, 1.7E, 0.17E2.3, 17,22E05, .25E-7

Other Literals
The Boolean Literals represents either TRUE or FALSE. It always Boolean type. A null literals indicates nothing. It always null type. Character Literals must contain one character and must enclosed in single quotation mark.
e.g. ‘a’, ‘%’ , ‘9’ , ‘\’ etc.
Java allows some non-graphic characters (which can not be typed directly through keyboard) by using Escape sequence () .
The following Escape characters are commonly used in Java.
\a (alert), \b (backspace), \f (Form feed),
\n (new line), \r (return key), \t (Horizontal tab),
\v (vertical tab), \ (back slash), \’ (single quote) ,
\” (double quote) , \? (question mark), \0 (null) etc.
String Literals is a sequence of zero or more characters enclosed in double quotes. E.g. “abs”, “amit” , “1234” , “12 A” etc.

Data types in JAVA


Data types are means to identify the type of data and associated operations of handling it. Java offers two types of data types.
Primitive:
These are in-built data types offered by the compiler. Java supports 8 primitive data types e.g. byte, short, int, long, float, double, char, boolean.
Reference:
These are constructed by using primitive data types, as per user need. Reference data types store the memory address of an object. Class, Interface and Array are the example of Reference Data types.

Primitive Data types

By default Java assume frictional value as double, F and D suffix can be
used with number to indicate float and double values respectively.

Working with Variables
A variable is named memory location, which holds a data value of a particular data type.
Declaration and Initialization of variable-
<data type><variable name>;

int age;
double amount;
double price=214.70, discount =0.12;
String name=“Amitabh”
long x=25L;
byte a=3;
float x= a+b;

By default all Numeric variables initialized with 0, and character and reference variable with null, boolean with false, if it is not initialized. The keyword final can be used with variable declaration to indicate constant.
E.g. final double SERVICE_TAX=0.020;

Operators in Java
The operators are symbols or words, which perform specified operation on its operands. Operators may Unary, Binary and Turnery as per number of operands it requires. Java offers the following types of Operators:-

  • Arithmetic Operator
  • Increment/Decrement Operator
  • Relational or Comparison Operators
  • Logical Operators
  • Assignment Operators
  • Other Operators.

Arithmetic Operators

  1. Increment & Decrement Operator
    Java supports ++ and — operator which adds or subtract 1 from its operand. i.e.
    a=a+1 equivalent to ++a or a++
    a=a-1 equivalent to –a or a–
    ++ or — operator may used in Pre or Post form.
    ++a or –a (increase/decrease before use)
    a++ or a– (increase/decrease after use)
    Ex. Find value of P? (initially n=8 and p=4)
    p=p* –n; 28
    p=p* n–; 32
    Ex. Evaluate x=++y + 2y if y=6.
    =7+14 = 21

3. Relational Operator
Relational operators returns true or false as per the relation between operands. Java offers the following six relational operators.

  • < less than
  • <= less than or equal to
  • greater than = greater than or equal to
  • == equal to
  • != not equal to

Relational operators solved from left to right.

Ex: 3>=3 true3!=3 false

a==b true if a and b have the same value.

a<b<c => (a<b)<c true if a is smallest.

4. Logical Operator
Logical operators returns true or false as per the condition of operands. These are used to design more complex conditions. Java offers the following six (5 binary and 1 unary) logical operators.

Example:

  • 5>8 || 5<2 (false)
  • 1==0||0>1 (false)
  • 6<9 && 4>2 (true)
  • 6==3&&4==4 (false)
  • !(5!=0) (false)
  • !(5>9) (true)

5. Assignment Operator
In Java = operator is known as Assignment operator, it assigns right hand value to left hand variables.
Ex: int x=5;
z= x+y;
Java offers some special shortened Assignment operators, which are used to assign values on a variable.

  1. Other Operators
    In Java some other operators are also used for various operations. Some operators are-

Example: result = marks>=50 ? ‘P’ : ‘F’
6>4 ? 9:7 evaluates 9 because 6>4 is true.

Operator’s Precedence
Operator’s precedence determines the order in which expressions are evaluated.
There is certain rules called Precedence for evaluating a complex expression.
e.g. y=6+4/2 (why 8 not 5 ?)

Expression in Java
An expression is a valid combination of operators, constants and variable and keywords i.e. combination of Java tokens.
In java, three types of expressions are used.
1. Arithmetic Expression
Arithmetic expression may contain one or more numeric variables, literals and operators. Two operands or operators should not occur in continuation.
e.g. x+*y and q(a+b-z/4) are invalid expressions.
Pure expression: when all operands are of same type.
Mixed expressions: when operands are of different data types.
2. Logical Expression
Logical or Boolean expression may have two or more simple expressions joined with relational or logical operators.
e.g. x>y (y+z)>=(x/z) x||y && z
3. Compound Expression
It is combination of two or more simple expressions.
e.g. (a+b)/(c+d) (a>b)||(b<c)

Data Type Conversion in JAVA
The process of converting one predefined type into another is called type conversion.
In mixed expression, various types of constant and variables are converted into same type before evaluation.
Java facilitates two types of conversion.
Implicit type conversion
Explicit type conversion

Implicit Type Conversion
It is performed by the compiler, when different data types are intermixed in an expression. It is also called Coercian.
In Implicit conversion, all operands are promoted (Coercion) up to the largest data type in the expression.
Ex. Consider the given expression, where f is float, d is double and I is integer data type.

Explicit Conversion in JAVA
An explicit conversion is user defined that forces to convert an operand to a specific data type by (type) cast.
e.g. (float) (x/2) suppose x is integer.
The result of x/2 is converted in float otherwise it will give integer result.
In pure expression the resultant is given as expression’s data type.
e.g. 100/11 will give 9 not 9.999 (since both are integer)
In mixed expression the implicit conversion is applied (largest type promotion)
e.g. int a, mb=2, k=4 then evaluate
a=mb*3/4+k/4+8-mb+5/8
= 2 * 3 / 4 + 4 / 4 + 8 – 2 + 5 / 8
= 6 / 4 + 1 + 8 – 2 + 5 / 8
= 1 + 1 + 8 – 2 + 0 (6/4 will give 1 )
= 8

JAVA Statements
A statement in Java is a complete unit of execution. It may consists of Expression, Declaration, Control flow statements and must be ended with semicolon (;)
Statements forms a block enclosed within { }. Even a block may have no statement (empty block).
E.g. If(a>b)
{…….
…….
}
Just Think….. Why?
System.out.print(‘h’+’a’) will give 169 //ASCII values of ‘h’ and ‘a’ are added
System.out.print(“ ”+‘h’+’a’) will give ha //’h’ and ‘a’ are concatenated and converted to string because of ” “.
System.out.print(“2+2=”+2+2) will give 2+2=22 //”2+2=” will be printed as it is because it is considered as string. Whereas 2+2 will concatenate the values because both numbers are considered as string.
System.out.print(“2+2=”+(2+2)) will give 2+2=4 // “2+2=” will be printed as it is because it is considered as string. Whereas (2+2) will add two values and the result 4 is considered as string and get printed.

Programming Constructs in JAVA
In general a program is executed from begin to end. But sometimes it required to execute the program selectively or repeatedly as per defined condition. Such constructs are called control statements.
The programming constructs in Java, are categorized into –
Sequence: Statements are executed in top-down sequence.
Selection (conditional): Execution of statement depends on the condition, whether it is True or False. (Ex. if.., if…else, switch constructs)
Iteration (Looping): Statement is executed multiple times (repetition) till the defined condition True or False. (Ex. for.. , while… , do..while loop constructs)

Programming Construct

Selection statement (if..)
The if… statement is used to test a condition. If defined condition is true the statements are executed otherwise they are ignored. The condition may be simple or complex (using &&, || etc.) and must be enclosed in ( ). Expression defined as condition must be evaluated as True or False.
if (condition)
{
statement 1 ;
……………..
}
In case of single statement in if… the use of {} is optional.

Example of IF statement: if ( num>0) {
jLable1.setText(“Number is positive”);
}
if ( ch>=‘0’ && ch<=‘9’ ) {
jLable1.setText(“It is digit”);
}

Selection statement (if..else..)
The if…else.. also tests condition. If defined condition is true the statements in True block are executed otherwise else block is executed.
if (condition)
{
statement 1 ;
……………..
}
else
{
statement 2;
…………….
}
In case of single statement {} is optional. Example:
if ( num>0) {
jLable1.setText(“Number is positive”);
}
else
{
jLable1.setText(“Number is zero or negative”);
}
if ( age>=18)
jLable1.setText(“Eligible to Vote”);
else
jLable1.setText(“Not eligible to Vote”);

Nested if…
An if… or if..else.. may have another if.. Statement in its true block or in false block. It is known as Nesting of if (placing an if inside another if).

if (condition1){
if(condition 2)
{ …….. }
else
{ ……… }
}
else{
if(condition 3)
{ …….. }
else
{ ……… }
}

Example: if ( num>0)
{
jLable1.setText(“Number is positive”);
}
else
{ if (num<0)
jLable1.setText(“Number is negative”);
else
jLable1.setText(“Number is zero”);
}

If…else…If ladder
When a else block contains another if.. and this nested else block may have another if and so on. This nesting is often known as if..else..if ladder or staircase.

Conditional operator and if.. statement
The ? : (conditional operator) may be used as alternative to if..else.. statement in Java. In contrast to if…, ?: is more concise and compact code it is less functional than ‘if’. ?: produces an expression so that a single value may be incorporated whereas if.. is more flexible, whereas you may use multiple statements, expressions and assignments. When ?: is used as nested form, it becomes more complex and difficult to understand.

The switch statement
Multi-branching selection can be made in Java by using switch statement. It test successively, the value of an expression (short, int, long or char type), when match is found, the statements associated with constant is executed.
switch ()
{ case : statement (s);
break;
case : statement (s);
break;
case : statement (s);
break;
………..
[default : statement (s);]
}

  1. No two identical constant can be used.
  2. Default.. is optional and may be anywhere in switch block, if used.

Example: switch (day)
{ case 1 : Dow=“Sunday”;
break;
case 2 : Dow=“Monday”;
break;
case 3 : Dow=“Tuesday”;
break;
case 4 : Dow=“Wednesday”;
break;
case 5 : Dow=“Thursday”;
break;
case 6 : Dow=“Friday”;
break;
case 7 : Dow=“Saturday”;
break;
default : Dow=“Wrong Input”;
} jLable.setText(“Weak day”+Dow);

Switch and if..else statement
The switch and if..else both are used to make a selection construct in Java, but there some differences. Switch can test only equality whereas if.. Can evaluate any type of relational or logical expression. In switch a single value or constant can be tested but in if.. more versatile expression can be tested. The switch statement can handle only byte, short, int or char variable but If.. can test more data type like float, double or string etc.

Iteration (looping) statements
Iteration or looping allow a set of instructions to be executed repeatedly until a certain condition is true or false. As per placing of condition to be tested, a loop may be Entry-controlled or Exit-controlled loop. In Entry controlled loop, a condition is tested (pre test) before executing the statements. Whereas in Exit-controlled statements are executed first then condition is tested (post test), which ensures at least on time execution of statements.
As per number of execution, a loop may be Counter controlled or Sentinel loop. Counter controlled loops are executed fixed number of times, but sentinel loop may be stopped any time by giving its sentinel value. i.e. number of execution can not be forecasted.
A body of loop contains a block, having statements to be executed.

The for .. loop
In simple use, a for.. Loop is Entry-controlled and counter controlled loop having fixed number of iteration.
for (initialization exp (s) ; condition ; update exp (s) )
{ ………..
………..
}

//loop to print natural number upto 10 for (int i=1; i<=10 ; i++ ) {
System.out.println (“”+i);
}
//loop to get sum of first 10 nos.
int sum=0;
for (int i=1; i<=10 ; i++ ) {
sum=sum+ i;
}
System.out.println (“”+sum);

//loop to find even nos. up to 50
for (int i=0; i<=50 ; i=i+2)
System.out.println (“”+i);

//loop to find factorial
int fact=1,num=5;
for (int i=1; i<=num ; i++)
fact=fact * i;
System.out.println (“factorial=”+fact);

Variations in for.. loop
Multiple initialization and update expression
A for.. Loop may contain multiple initialization and/or update expressions separated by(,)
for (i=0,sum=0;i<=n; sum++, i++)
Optional Expressions
In for loop initialization, condition and update section may be omitted. Note that (;) must be present.
for ( ; i<=n ; )
Infinite loop
For.. Loop may be endless (infinite) when defined condition is always true or it is omitted.
for ( ; ; )
Empty loop
for.. Loop may not contain any statement in looping body i.e. Empty loop. If (;) placed after for.. Loop then empty loop is created.
for (int i=1; i<=300 ; i++) ;
Variable declared inside for.. Loop can’t accessed outside the loop.
Since it is out of scope.

The while.. loop
In simple use, a while .. Loop is Entry-controlled and counter controlled or sentinel looping statement, which executes statements until defined condition is true. A while loop also may be empty or infinite.
while (condition)
{ ………..
………..
}

int i=1;
while ( i<=10) {
i=i+1;
System.out.println (“”+i);
}

//while loop to find factorial
int fact=1,num=5,i=1;
while (i<=num)
{ fact=fact * i;
i++;
}
System.out.println (“factorial=”+fact);

The do..while loop
Unlike for.. and while.. Loop, do..while loop is Exit-controlled and counter controlled or sentinel looping statement, which executes statements until defined condition is true. It always executes at least once. A do…while loop also may be empty or infinite.
do
{ ………..
………..
} while (condition);

// do.. Loop to print A – Z letters
char ch =‘A’;
do {
System.out.println (“”+i);
ch++;
} while (ch<=‘Z’);

//do.. loop fixed time
int i=1;
do
{System.out.println (“”+i);
i++;
} while (i<=10);

Which loop is better ?
Java offers three looping statements i.e. for.., while.. and do..while. There are some situation where one loop is more appropriate than others. The for loop is best suited where number of execution is known in advance. (fixed execution). The while and do.. are more suitable in the situations where it is not known that when loop will terminate. (unpredictable times of execution). The do.. Loop ensures at least one time of execution since it is Exit-controlled loop.

Jump statements in Java
Java offers three jump statements (return, break and continue), which transfers the control else where unconditionally.
The return statement can be used any where in the program. It transfers the control to calling module or Operating System. However Java provides System.exit() method to stop the execution of program.
The break is used with for.., while, do.. and switch statements which enables the program to skip over some part of the code and places control just after the nearest closing of block. It is used to terminate the loop.
The continue statement is used within looping statement (not with switch) and works like break i.e. it also skips the statements. Unlike break, it forces the next iteration of loop
by skipping the in between code and continues the loop.

Break and Continue the loop

Scope of a variable
In Java, a variable can be declared any where in the program but before using them. The area of program within which a variable is accessible, known as its scope. A variable can be accessed within the block where it is declared.


Comments

Popular posts from this blog