Java tutorial, Study notes for Java Programming. Kingston University
.21531
.21531

Java tutorial, Study notes for Java Programming. Kingston University

PDF (3 MB)
320 pages
7Number of download
332Number of visits
Description
Tutorials for java
20 points
Download points needed to download
this document
Download the document
Preview3 pages / 320
This is only a preview
3 shown on 320 pages
Download the document
This is only a preview
3 shown on 320 pages
Download the document
This is only a preview
3 shown on 320 pages
Download the document
This is only a preview
3 shown on 320 pages
Download the document
java_tutorial

Java Tutorial

JAVA TUTORIAL Simply Easy Learning by tutorialspoint.com

tutorialspoint.com

TUTORIALS POINT   Simply  Easy  Learning  

ABOUT THE TUTORIAL

Java Tutorial Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. Java runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX. This tutorial gives a complete understanding ofJava.

This reference will take you through simple and practical approach while learning Java Programming language.

Audience This reference has been prepared for the beginners to help them understand the basic to advanced concepts related to Java Programming language.

Prerequisites Before you start doing practice with various types of examples given in this reference, I'm making an assumption that you are already aware about what is a computer program and what is a computer programming language?

Copyright & Disclaimer Notice ©All the content and graphics on this tutorial are the property of tutorialspoint.com. Any content from tutorialspoint.com or this tutorial may not be redistributed or reproduced in any way, shape, or form without the written permission of tutorialspoint.com. Failure to do so is a violation of copyright laws.

This tutorial may contain inaccuracies or errors and tutorialspoint provides no guarantee regarding the accuracy of the site or its contents including this tutorial. If you discover that the tutorialspoint.com site or this tutorial content contains some errors, please contact us at [email protected]

TUTORIALS POINT   Simply  Easy  Learning  

Table of Content Java Tutorial .............................................................................. 2   Audience .................................................................................... 2   Prerequisites .............................................................................. 2   Copyright & Disclaimer Notice ................................................... 2   Java Overview ......................................................................... 15   History of Java: ......................................................................................... 16   Tools you will need: .................................................................................. 16   What is Next? ........................................................................................... 16   Java Environment Setup .......................................................... 17   Setting up the path for windows 2000/XP: ............................................... 17   Setting up the path for windows 95/98/ME: .............................................. 17   Setting up the path for Linux, UNIX, Solaris, FreeBSD: ........................... 17   Popular Java Editors: ............................................................................... 18   What is Next? ........................................................................................... 18   Java Basic Syntax .................................................................... 19   First Java Program: .................................................................................. 19   Basic Syntax: ............................................................................................ 20   Java Identifiers: ........................................................................................ 20   Java Modifiers: ......................................................................................... 21   Java Variables: ......................................................................................... 21   Java Arrays: ............................................................................................. 21   Java Enums: ............................................................................................. 21   Example: .................................................................................................. 21   Java Keywords: ........................................................................................ 22   Comments in Java .................................................................................... 22   Using Blank Lines: .................................................................................... 22   Inheritance: ............................................................................................... 22   Interfaces: ................................................................................................. 23   What is Next? ........................................................................................... 23   Java Object & Classes ............................................................. 24   Objects in Java: ........................................................................................ 24   Classes in Java: ....................................................................................... 25   Constructors: ............................................................................................ 25   Singleton Classes ..................................................................................... 26   Implementing Singletons: ......................................................................... 26   Example 1: ............................................................................................... 26   Example 2: ............................................................................................... 27  

TUTORIALS POINT   Simply  Easy  Learning  

Creating an Object: .................................................................................. 27   Accessing Instance Variables and Methods: ............................................ 27   Example: .................................................................................................. 28   Source file declaration rules: .................................................................... 28   Java Package: .......................................................................................... 29   Import statements: .................................................................................... 29   A Simple Case Study: .............................................................................. 29   What is Next? ........................................................................................... 31   Java Basic Data Types ............................................................ 32   Primitive Data Types: ............................................................................... 32   byte: .......................................................................................................... 32   short: ........................................................................................................ 32   int: ............................................................................................................. 33   long: .......................................................................................................... 33   float: .......................................................................................................... 33   double: ...................................................................................................... 34   boolean: .................................................................................................... 34   char: ......................................................................................................... 34   Reference Data Types: ............................................................................ 34   Java Literals: ............................................................................................ 35   What is Next? ........................................................................................... 36   Java Variable Types ................................................................ 37   Local variables: ........................................................................................ 37   Example: .................................................................................................. 38   Example: .................................................................................................. 38   Instance variables: ................................................................................... 38   Example: .................................................................................................. 39   Class/static variables: ............................................................................... 40   Example: .................................................................................................. 40   What is Next? ........................................................................................... 41   Java Modifier Types ................................................................. 42   1. Java Access Modifiers .......................................................................... 42   Default Access Modifier - No keyword: .................................................... 42   Example: .................................................................................................. 42   Private Access Modifier - private: ............................................................. 43   Example: .................................................................................................. 43   Public Access Modifier - public: ................................................................ 43   Example: .................................................................................................. 43   Protected Access Modifier - protected: .................................................... 44  

TUTORIALS POINT   Simply  Easy  Learning  

Example: .................................................................................................. 44   Access Control and Inheritance: .............................................................. 44   2. Non Access Modifiers ........................................................................... 44   Access Control Modifiers: ......................................................................... 45   Non Access Modifiers: .............................................................................. 45   Access Control Modifiers: ......................................................................... 45   Non Access Modifiers: .............................................................................. 45   What is Next? ........................................................................................... 46   Java Basic Operators ............................................................... 47   The Arithmetic Operators: ........................................................................ 47   The Relational Operators: ........................................................................ 48   Example ................................................................................................... 49   The Bitwise Operators: ............................................................................. 49   Example ................................................................................................... 50   The Logical Operators: ............................................................................. 51   Example ................................................................................................... 51   The Assignment Operators: ..................................................................... 51   Example: .................................................................................................. 52   Misc Operators ......................................................................................... 53   Conditional Operator (?:): ......................................................................... 53   instanceof Operator: ................................................................................. 54   Precedence of Java Operators: ................................................................ 54   What is Next? ........................................................................................... 55   Java Loop Control .................................................................... 56   The while Loop: ........................................................................................ 56   Syntax: ..................................................................................................... 56   Example: .................................................................................................. 56   The do...while Loop: ................................................................................. 57   Syntax: ..................................................................................................... 57   Example: .................................................................................................. 57   The for Loop: ............................................................................................ 58   Syntax: ..................................................................................................... 58   Example: .................................................................................................. 58   Enhanced for loop in Java: ....................................................................... 59   Syntax: ..................................................................................................... 59   Example: .................................................................................................. 59   The break Keyword: ................................................................................. 59   Syntax: ..................................................................................................... 60   Example: .................................................................................................. 60  

TUTORIALS POINT   Simply  Easy  Learning  

The continue Keyword: ............................................................................. 60   Syntax: ..................................................................................................... 60   Example: .................................................................................................. 60   What is Next? ........................................................................................... 61   Java Decision Making .............................................................. 62   The if Statement: ...................................................................................... 62   Syntax: ..................................................................................................... 62   Example: .................................................................................................. 62   The if...else Statement: ............................................................................ 63   Syntax: ..................................................................................................... 63   Example: .................................................................................................. 63   The if...else if...else Statement: ................................................................ 63   Syntax: ..................................................................................................... 63   Example: .................................................................................................. 64   Nested if...else Statement: ....................................................................... 64   Syntax: ..................................................................................................... 64   Example: .................................................................................................. 64   The switch Statement: .............................................................................. 65   Syntax: ..................................................................................................... 65   Example: .................................................................................................. 65   What is Next? ........................................................................................... 66   Java Numbers .......................................................................... 67   Example: .................................................................................................. 67   Number Methods: ..................................................................................... 68   xxxValue() ................................................................................................ 69   compareTo() ............................................................................................. 70   equals() .................................................................................................... 71   valueOf() ................................................................................................... 72   toString() ................................................................................................... 73   parseInt() .................................................................................................. 74   abs() ......................................................................................................... 75   ceil() .......................................................................................................... 76   floor() ........................................................................................................ 77   rint() .......................................................................................................... 78   round() ...................................................................................................... 78   min() ......................................................................................................... 79   max() ........................................................................................................ 80   exp() ......................................................................................................... 81   log() .......................................................................................................... 82  

TUTORIALS POINT   Simply  Easy  Learning  

pow() ........................................................................................................ 82   sqrt() ......................................................................................................... 83   sin() .......................................................................................................... 84   cos() ......................................................................................................... 85   tan() .......................................................................................................... 86   asin() ........................................................................................................ 86   acos() ....................................................................................................... 87   atan() ........................................................................................................ 88   atan2() ...................................................................................................... 89   toDegrees() .............................................................................................. 90   toRadians() ............................................................................................... 90   random() ................................................................................................... 91   What is Next? ........................................................................................... 92   Java Characters ....................................................................... 93   Example: .................................................................................................. 93   Example: .................................................................................................. 93   Escape Sequences: ................................................................................. 93   Example: .................................................................................................. 94   Character Methods: .................................................................................. 94   isLetter() ................................................................................................... 95   isDigit() ..................................................................................................... 96   isWhitespace() .......................................................................................... 96   isUpperCase() .......................................................................................... 97   isLowerCase() .......................................................................................... 98   toUpperCase() .......................................................................................... 99   toLowerCase() .......................................................................................... 99   toString() ................................................................................................. 100   What is Next? ......................................................................................... 101   Java Strings ........................................................................... 102   Creating Strings: ..................................................................................... 102   String Length: ......................................................................................... 102   Concatenating Strings: ........................................................................... 103   Creating Format Strings: ........................................................................ 103   String Methods: ...................................................................................... 104   char charAt(int index) ............................................................................ 106   int compareTo(Object o) ......................................................................... 107   int compareTo(String anotherString) ...................................................... 108   int compareToIgnoreCase(String str) ..................................................... 109   String concat(String str) .......................................................................... 110  

TUTORIALS POINT   Simply  Easy  Learning  

boolean contentEquals(StringBuffer sb) ................................................. 111   static String copyValueOf(char[] data) .................................................... 112   boolean endsWith(String suffix) ............................................................. 113   boolean equals(Object anObject) ........................................................... 114   boolean equalsIgnoreCase(String anotherString) .................................. 115   byte getBytes() ....................................................................................... 116   byte[] getBytes(String charsetName) ..................................................... 117   void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) ............ 118   int hashCode() ........................................................................................ 119   int indexOf(int ch) ................................................................................... 120   int indexOf(int ch, int fromIndex) ............................................................ 121   int indexOf(String str) ............................................................................. 123   int indexOf(String str, int fromIndex) ....................................................... 124   String intern() .......................................................................................... 126   int lastIndexOf(int ch) ............................................................................. 127   int lastIndexOf(int ch, int fromIndex) ....................................................... 128   int lastIndexOf(String str) ........................................................................ 130   int lastIndexOf(String str, int fromIndex) ................................................. 131   int length() .............................................................................................. 133   boolean matches(String regex) .............................................................. 133   boolean regionMatches(boolean ignoreCase, int toffset, ....................... 134   String other, int ooffset, int len) .............................................................. 134   boolean regionMatches(int toffset, String other, int ooffset, int len) ....... 136   String replace(char oldChar, char newChar) .......................................... 137   String replaceAll(String regex, String replacement) ............................... 138   String replaceFirst(String regex, String replacement) ............................ 139   String[] split(String regex) ....................................................................... 140   String[] split(String regex, int limit) .......................................................... 141   boolean startsWith(String prefix) ............................................................ 143   boolean startsWith(String prefix, int toffset) ........................................... 144   CharSequence subSequence(int beginIndex, int endIndex) .................. 145   String substring(int beginIndex) .............................................................. 146   String substring(int beginIndex, int endIndex) ........................................ 147   char[] toCharArray() ................................................................................ 148   String toLowerCase() ............................................................................. 148   String toLowerCase(Locale locale) ........................................................ 149   String toString() ...................................................................................... 150   String toUpperCase() ............................................................................. 151   String toUpperCase(Locale locale) ........................................................ 152  

TUTORIALS POINT   Simply  Easy  Learning  

String trim() ............................................................................................. 153   static String valueOf(primitive data type x) ............................................. 154   Java Arrays ............................................................................ 156   Declaring Array Variables: ...................................................................... 156   Example: ................................................................................................ 156   Creating Arrays: ..................................................................................... 156   Example: ................................................................................................ 157   Processing Arrays: ................................................................................. 157   Example: ................................................................................................ 157   The foreach Loops: ................................................................................ 158   Example: ................................................................................................ 158   Passing Arrays to Methods: ................................................................... 158   Returning an Array from a Method: ........................................................ 159   The Arrays Class: ................................................................................... 159   Java Date and Time ............................................................... 160   Getting Current Date & Time .................................................................. 161   Date Comparison: .................................................................................. 161   Date Formatting using SimpleDateFormat: ............................................ 161   Simple DateFormat format codes: .......................................................... 162   Date Formatting using printf: .................................................................. 162   Date and Time Conversion Characters: ................................................. 164   Parsing Strings into Dates: ..................................................................... 165   Sleeping for a While: .............................................................................. 165   Measuring Elapsed Time: ....................................................................... 166   GregorianCalendar Class: ...................................................................... 166   Example: ................................................................................................ 168   Java Regular Expressions ..................................................... 170   Capturing Groups: .................................................................................. 170   Example: ................................................................................................ 171   Regular Expression Syntax: ................................................................... 171   Methods of the Matcher Class: ............................................................... 172   Index Methods: ....................................................................................... 172   Study Methods: ...................................................................................... 173   Replacement Methods: .......................................................................... 173   The start and end Methods: ................................................................... 174   The matches and lookingAt Methods: .................................................... 174   The replaceFirst and replaceAll Methods: .............................................. 175   The appendReplacement and appendTail Methods: ............................. 175   PatternSyntaxException Class Methods: ............................................... 176  

TUTORIALS POINT   Simply  Easy  Learning  

Java Methods ......................................................................... 177   Creating a Method: ................................................................................. 177   Example: ................................................................................................ 178   Calling a Method: ................................................................................... 178   Example: ................................................................................................ 178   The void Keyword: .................................................................................. 179   Example: ................................................................................................ 179   Passing Parameters by Values: ............................................................. 180   Example: ................................................................................................ 180   Overloading Methods: ............................................................................ 181   The Scope of Variables: ......................................................................... 181   Using Command-Line Arguments: ......................................................... 182   Example: ................................................................................................ 182   The Constructors: ................................................................................... 183   Example: ................................................................................................ 183   Example: ................................................................................................ 183   Variable Arguments(var-args): ............................................................... 184   Example: ................................................................................................ 184   The finalize( ) Method: ............................................................................ 184   Java Streams, Files and I/O ................................................... 186   Byte Streams .......................................................................................... 186   Character Streams ................................................................................. 187   Standard Streams .................................................................................. 188   Reading and Writing Files: ..................................................................... 189   FileInputStream: ..................................................................................... 189   ByteArrayInputStream ............................................................................ 190   Example: ................................................................................................ 190   DataInputStream .................................................................................... 191   Example: ................................................................................................ 192   FileOutputStream: .................................................................................. 193   ByteArrayOutputStream ......................................................................... 193   Example: ................................................................................................ 194   DataOutputStream ................................................................................. 195   Example: ................................................................................................ 195   Example: ................................................................................................ 196   File Navigation and I/O: .......................................................................... 197   File Class ................................................................................................ 197   Example: ................................................................................................ 200   FileReader Class .................................................................................... 200  

TUTORIALS POINT   Simply  Easy  Learning  

Example: ................................................................................................ 201   FileWriter Class ...................................................................................... 201   Example: ................................................................................................ 202   Directories in Java: ................................................................................. 203   Creating Directories: ............................................................................... 203   Listing Directories: .................................................................................. 203   Java Exceptions ..................................................................... 205   Exception Hierarchy: .............................................................................. 205   Exceptions Methods: .............................................................................. 207   Catching Exceptions: .............................................................................. 207   Example: ................................................................................................ 208   Multiple catch Blocks: ............................................................................. 208   Example: ................................................................................................ 209   The throws/throw Keywords: .................................................................. 209   The finally Keyword ................................................................................ 209   Example: ................................................................................................ 210   Declaring you own Exception: ................................................................ 211   Example: ................................................................................................ 211   Common Exceptions: ............................................................................. 213   Java Inheritance ..................................................................... 214   IS-A Relationship: ................................................................................... 214   Example: ................................................................................................ 215   Example: ................................................................................................ 215   The instanceof Keyword: ........................................................................ 215   HAS-A relationship: ................................................................................ 216   Java Overriding ...................................................................... 217   Example: ................................................................................................ 217   Rules for method overriding: .................................................................. 218   Using the super keyword: ....................................................................... 219   Java Polymorphism ................................................................ 220   Example: ................................................................................................ 220   Virtual Methods: ..................................................................................... 221   Java Abstraction .................................................................... 224   Abstract Class: ....................................................................................... 224   Extending Abstract Class: ...................................................................... 225   Abstract Methods: .................................................................................. 226   Java Encapsulation ................................................................ 228   Example: ................................................................................................ 228   Benefits of Encapsulation: ...................................................................... 229  

TUTORIALS POINT   Simply  Easy  Learning  

Java Interfaces ....................................................................... 230   Declaring Interfaces: .............................................................................. 231   Example: ................................................................................................ 231   Example: ................................................................................................ 231   Implementing Interfaces: ........................................................................ 231   Extending Interfaces: .............................................................................. 232   Extending Multiple Interfaces: ................................................................ 233   Tagging Interfaces: ................................................................................. 233   Java Packages ....................................................................... 234   Creating a package: ............................................................................... 234   Example: ................................................................................................ 234   The import Keyword: .............................................................................. 235   Example: ................................................................................................ 235   The Directory Structure of Packages: .................................................... 236   Set CLASSPATH System Variable: ....................................................... 237   Java Data Structures ............................................................. 239   The Enumeration: ................................................................................... 239   Example: ................................................................................................ 240   The BitSet ............................................................................................... 240   Example: ................................................................................................ 242   The Vector .............................................................................................. 243   Example: ................................................................................................ 246   The Stack ............................................................................................... 247   Example: ................................................................................................ 248   The Dictionary ........................................................................................ 249   Map Interface ......................................................................................... 249   Example: ................................................................................................ 250   The Hashtable ........................................................................................ 251   Example: ................................................................................................ 252   The Properties ........................................................................................ 253   Example: ................................................................................................ 254   Java Collections ..................................................................... 256   The Collection Interfaces: ....................................................................... 256   The Collection Classes: .......................................................................... 257   The Collection Algorithms: ..................................................................... 258   How to use an Iterator? .......................................................................... 259   Using Java Iterator ................................................................................. 259   The Methods Declared by Iterator: ......................................................... 259   The Methods Declared by ListIterator: ................................................... 260  

TUTORIALS POINT   Simply  Easy  Learning  

Example: ................................................................................................ 260   How to use a Comparator? .................................................................... 261   Using Java Comparator .......................................................................... 261   The compare Method: ............................................................................ 262   The equals Method: ................................................................................ 262   Example: ................................................................................................ 262   Summary: ............................................................................................... 263   Java Generics ........................................................................ 264   Generic Methods: ................................................................................... 264   Example: ................................................................................................ 264   Bounded Type Parameters: ................................................................... 265   Example: ................................................................................................ 265   Generic Classes: .................................................................................... 266   Example: ................................................................................................ 266   Java Serialization ................................................................... 268   Serializing an Object: ............................................................................. 269   Deserializing an Object: ......................................................................... 269   Java Networking .................................................................... 271   Url Processing ........................................................................................ 271   URL Class Methods: .............................................................................. 272   Example: ................................................................................................ 273   URLConnections Class Methods: .......................................................... 273   Example: ................................................................................................ 274   Socket Programming: ............................................................................. 275   ServerSocket Class Methods: ................................................................ 276   Socket Class Methods: ........................................................................... 277   InetAddress Class Methods: .................................................................. 278   Socket Client Example: .......................................................................... 278   Socket Server Example: ......................................................................... 279   Java Sending E-mail .............................................................. 281   Send a Simple E-mail: ............................................................................ 281   Send an HTML E-mail: ........................................................................... 282   Send Attachment in E-mail: .................................................................... 284   User Authentication Part: ....................................................................... 285   Java Multithreading ................................................................ 286   Life Cycle of a Thread: ........................................................................... 286   Thread Priorities: .................................................................................... 287   Create Thread by Implementing Runnable Interface: ............................ 287   STEP 1: .................................................................................................. 288  

TUTORIALS POINT   Simply  Easy  Learning  

STEP 2: .................................................................................................. 288   STEP 3 ................................................................................................... 288   Example: ................................................................................................ 288   Create Thread by Extending Thread Class: ........................................... 289   STEP 1 ................................................................................................... 289   STEP 2 ................................................................................................... 289   Example: ................................................................................................ 289   Thread Methods: .................................................................................... 291   Example: ................................................................................................ 292   Major Java Multithreading Concepts: ..................................................... 293   What is Thread synchronization? ........................................................... 294   Multithreading example without Synchronization: .................................. 294   Multithreading example with Synchronization: ....................................... 295   Handling threads inter communication ................................................... 297   Example: ................................................................................................ 297   Handling threads deadlock ..................................................................... 299   Example: ................................................................................................ 299   Deadlock Solution Example: .................................................................. 300   Major thread operatios ........................................................................... 301   Example: ................................................................................................ 301   Java Applet Basics ................................................................. 304   Life Cycle of an Applet: .......................................................................... 304   A "Hello, World" Applet: .......................................................................... 305   The Applet CLASS: ................................................................................ 305   Invoking an Applet: ................................................................................. 306   Getting Applet Parameters: .................................................................... 307   Specifying Applet Parameters: ............................................................... 308   Application Conversion to Applets: ......................................................... 308   Event Handling: ...................................................................................... 309   Displaying Images: ................................................................................. 310   Playing Audio: ........................................................................................ 311   Java Documentation .............................................................. 313   What is Javadoc? ................................................................................... 313   The javadoc Tags: .................................................................................. 314   Example: ................................................................................................ 315   Java Library Classes .............................................................. 317  

TUTORIALS POINT   Simply  Easy  Learning  

Java Overview

Java programming language was originally developed by Sun Microsystems which was initiated by James Gosling and released in 1995 as core component of Sun Microsystems’ Java platform (Java 1.0 [J2SE]).

As of December 2008, the latest release of the Java Standard Edition is 6 (J2SE). With the advancement of Java and its widespread popularity, multiple configurations were built to suite various types of platforms. Ex: J2EE for Enterprise Applications, J2ME for Mobile Applications.

Sun Microsystems has renamed the new J2 versions as Java SE, Java EE and Java ME, respectively. Java is guaranteed to be Write Once, Run Anywhere.

Java is:

Object Oriented: In Java, everything is an Object. Java can be easily extended since it is based on the Object model.

Platform independent: Unlike many other programming languages including C and C++, when Java is compiled, it is not compiled into platform specific machine, rather into platform independent byte code. This byte code is distributed over the web and interpreted by virtual Machine (JVM) on whichever platform it is being run.

Simple:Java is designed to be easy to learn. If you understand the basic concept of OOP,Java would be easy to master.

Secure: With Java's secure feature, it enables to develop virus-free, tamper-free systems. Authentication techniques are based on public-key encryption.

Architectural-neutral:Java compiler generates an architecture-neutral object file format, which makes the compiled code to be executable on many processors, with the presence of Java runtime system.

Portable: Being architectural-neutral and having no implementation dependent aspects of the specification makes Java portable. Compiler inJava is written in ANSI C with a clean portability boundary which is a POSIX subset.

Robust:Java makes an effort to eliminate error prone situations by emphasizing mainly on compile time error checking and runtime checking.

CHAPTER

1

TUTORIALS POINT   Simply  Easy  Learning  

Multithreaded: With Java's multithreaded feature, it is possible to write programs that can do many tasks simultaneously. This design feature allows developers to construct smoothly running interactive applications.

Interpreted:Java byte code is translated on the fly to native machine instructions and is not stored anywhere. The development process is more rapid and analytical since the linking is an incremental and lightweight process.

High Performance: With the use of Just-In-Time compilers, Java enables high performance.

Distributed:Java is designed for the distributed environment of the internet.

Dynamic: Java is considered to be more dynamic than C or C++ since it is designed to adapt to an evolving environment. Java programs can carry extensive amount of run-time information that can be used to verify and resolve accesses to objects on run-time.

History  of  Java:   James Gosling initiated the Java language project in June 1991 for use in one of his many set-top box projects. The language, initially called Oak after an oak tree that stood outside Gosling's office, also went by the name Green and ended up later being renamed as Java, from a list of random words.

Sun released the first public implementation as Java 1.0 in 1995. It promised Write Once, Run Anywhere (WORA), providing no-cost run-times on popular platforms.

On 13 November 2006, Sun released much of Java as free and open source software under the terms of the GNU General Public License (GPL).

On 8 May 2007, Sun finished the process, making all of Java's core code free and open-source, aside from a small portion of code to which Sun did not hold the copyright.

Tools  you  will  need:   For performing the examples discussed in this tutorial, you will need a Pentium 200-MHz computer with a minimum of 64 MB of RAM (128 MB of RAM recommended).

You also will need the following softwares:

• Linux 7.1 or Windows 95/98/2000/XP operating system.

• Java JDK 5

• Microsoft Notepad or any other text editor

This tutorial will provide the necessary skills to create GUI, networking, and Web applications using Java.

What  is  Next?   Next chapter will guide you to where you can obtain Java and its documentation. Finally, it instructs you on how to install Java and prepare an environment to develop Java applications.

TUTORIALS POINT   Simply  Easy  Learning  

Java Environment Setup

Before we proceed further, it is important that we set up the Java environment correctly. This section guides you on how to download and set up Java on your machine. Please follow the following steps to set up the environment.

Java SE is freely available from the link Download Java. So you download a version based on your operating system. Follow the instructions to download Java and run the .exe to install Java on your machine. Once you installed Java on your machine, you would need to set environment variables to point to correct installation directories:

Setting  up  the  path  for  windows  2000/XP:   Assuming you have installed Java in c:\Program Files\java\jdk directory:

• Right-click on 'My Computer' and select 'Properties'.

• Click on the 'Environment variables' button under the 'Advanced' tab.

• Now, alter the 'Path' variable so that it also contains the path to the Java executable. Example, if the path is currently set to 'C:\WINDOWS\SYSTEM32', then change your path to read 'C:\WINDOWS\SYSTEM32;c:\Program Files\java\jdk\bin'.

Setting  up  the  path  for  windows  95/98/ME:   Assuming you have installed Java in c:\Program Files\java\jdk directory:

• Edit the 'C:\autoexec.bat' file and add the following line at the end: 'SET PATH=%PATH%;C:\Program Files\java\jdk\bin'

Setting  up  the  path  for  Linux,  UNIX,  Solaris,  FreeBSD:   Environment variable PATH should be set to point to where the Java binaries have been installed. Refer to your shell documentation if you have trouble doing this.

Example, if you use bash as your shell, then you would add the following line to the end of your '.bashrc: export PATH=/path/to/java:$PATH'

CHAPTER

2

TUTORIALS POINT   Simply  Easy  Learning  

Popular  Java  Editors:   To write your Java programs, you will need a text editor. There are even more sophisticated IDEs available in the market. But for now, you can consider one of the following:

Notepad: On Windows machine, you can use any simple text editor like Notepad (Recommended for this tutorial), TextPad.

Netbeans:Is a Java IDE that is open-source and free which can be downloaded fromhttp://www.netbeans.org/index.html.

Eclipse: Is also a Java IDE developed by the eclipse open-source community and can be downloaded from http://www.eclipse.org/.

What  is  Next?   Next chapter will teach you how to write and run your first Java program and some of the important basic syntaxes in Java needed for developing applications.

TUTORIALS POINT   Simply  Easy  Learning  

Java Basic Syntax

When we consider a Java program, it can be defined as a collection of objects that communicate via invoking each other's methods. Let us now briefly look into what do class, object, methods and instance variables mean.

Object - Objects have states and behaviors. Example: A dog has states-color, name, breed as well as behaviors -wagging, barking, eating. An object is an instance of a class.

Class - A class can be defined as a template/blue print that describes the behaviors/states that object of its type support.

Methods - A method is basically a behavior. A class can contain many methods. It is in methods where the logics are written, data is manipulated and all the actions are executed.

Instance Variables - Each object has its unique set of instance variables. An object's state is created by the values assigned to these instance variables.

First  Java  Program:   Let us look at a simple code that would print the words Hello World.

public class MyFirstJavaProgram{ /* This is my first java program. * This will print 'Hello World' as the output */ public static void main(String[]args){ System.out.println("Hello World");// prints Hello World } }

Let's look at how to save the file, compile and run the program. Please follow the steps given below:

• Open notepad and add the code as above.

• Save the file as: MyFirstJavaProgram.java.

• Open a command prompt window and go o the directory where you saved the class. Assume it's C:\.

• Type ' javac MyFirstJavaProgram.java ' and press enter to compile your code. If there are no errors in your code, the command prompt will take you to the next line(Assumption : The path variable is set).

CHAPTER

3

TUTORIALS POINT   Simply  Easy  Learning  

• Now, type ' java MyFirstJavaProgram ' to run your program.

• You will be able to see ' Hello World ' printed on the window.

C :> javac MyFirstJavaProgram.java C :> java MyFirstJavaProgram HelloWorld

Basic  Syntax:   About Java programs, it is very important to keep in mind the following points.

Case Sensitivity - Java is case sensitive, which means identifier Hello and hello would have different meaning in Java.

Class Names - For all class names, the first letter should be in Upper Case. If several words are used to form a name of the class, each inner word's first letter should be in Upper Case. Example class MyFirstJavaClass

Method Names - All method names should start with a Lower Case letter. If several words are used to form the name of the method, then each inner word's first letter should be in Upper Case. Example public void myMethodName()

Program File Name - Name of the program file should exactly match the class name. When saving the file, you should save it using the class name (Remember Java is case sensitive) and append '.java' to the end of the name (if the file name and the class name do not match your program will not compile). Example : Assume 'MyFirstJavaProgram' is the class name, then the file should be saved as'MyFirstJavaProgram.java'

public static void main(String args[]) - Java program processing starts from the main() method, which is a mandatory part of every Java program.

Java  Identifiers:   All Java components require names. Names used for classes, variables and methods are called identifiers.

In Java, there are several points to remember about identifiers. They are as follows:

• All identifiers should begin with a letter (A to Z or a to z), currency character ($) or an underscore (_).

• After the first character, identifiers can have any combination of characters.

• A keyword cannot be used as an identifier.

• Most importantly identifiers are case sensitive.

• Examples of legal identifiers:age, $salary, _value, __1_value

• Examples of illegal identifiers: 123abc, -salary

TUTORIALS POINT   Simply  Easy  Learning  

Java  Modifiers:   Like other languages, it is possible to modify classes, methods, etc., by using modifiers. There are two categories of modifiers:

Access Modifiers: default, public, protected, private • Non-access Modifiers: final, abstract, strictfp

We will be looking into more details about modifiers in the next section.

Java  Variables:   We would see following type of variables in Java:

• Local Variables • Class Variables (Static Variables) • Instance Variables (Non-static variables)

Java  Arrays:   Arrays are objects that store multiple variables of the same type. However, an array itself is an object on the heap. We will look into how to declare, construct and initialize in the upcoming chapters.

Java  Enums:   Enums were introduced in java 5.0. Enums restrict a variable to have one of only a few predefined values. The values in this enumerated list are called enums.

With the use of enums, it is possible to reduce the number of bugs in your code.

For example, if we consider an application for a fresh juice shop, it would be possible to restrict the glass size to small, medium and large. This would make sure that it would not allow anyone to order any size other than the small, medium or large.

Example:   Class FreshJuice{ enum FreshJuiceSize{ SMALL, MEDUIM, LARGE } FreshJuiceSize size; } public class FreshJuiceTest{ public static void main(String args[]){ FreshJuice juice =new FreshJuice(); juice.size =FreshJuice.FreshJuiceSize.MEDUIM ; } }

Note: enums can be declared as their own or inside a class. Methods, variables, constructors can be defined inside enums as well.

TUTORIALS POINT   Simply  Easy  Learning  

Java  Keywords:   The following list shows the reserved words in Java. These reserved words may not be used as constant or variable or any other identifier names.

abstract assert boolean break

byte case catch char

class const continue default

do double else enum

extends final finally float

for goto if implements

import instanceof int interface

long native new package

private protected public return

short static strictfp super

switch synchronized this throw

throws transient try void

volatile while

Comments  in  Java   Java supports single-line and multi-line comments very similar to c and c++. All characters available inside any comment are ignored by Java compiler.

public class MyFirstJavaProgram{ /* This is my first java program. * This will print 'Hello World' as the output * This is an example of multi-line comments. */ public static void main(String[]args){ // This is an example of single line comment /* This is also an example of single line comment. */ System.out.println("Hello World"); } }

Using  Blank  Lines:   A line containing only whitespace, possibly with a comment, is known as a blank line, and Java totally ignores it.

Inheritance:   Java classes can be derived from classes. Basically, if you need to create a new class and here is already a class that has some of the code you require, then it is possible to derive your new class from the already existing code.

TUTORIALS POINT   Simply  Easy  Learning  

This concept allows you to reuse the fields and methods of the existing class without having to rewrite the code in a new class. In this scenario, the existing class is called the superclass and the derived class is called the subclass.

Interfaces:   In Java language, an interface can be defined as a contract between objects on how to communicate with each other. Interfaces play a vital role when it comes to the concept of inheritance.

An interface defines the methods, a deriving class(subclass) should use. But the implementation of the methods is totally up to the subclass.

What  is  Next?   The next section explains about Objects and classes in Java programming. At the end of the session, you will be able to get a clear picture as to what are objects and what are classes in Java.

TUTORIALS POINT   Simply  Easy  Learning  

Java Object & Classes

Java is an Object-Oriented Language. As a language that has the Object Oriented feature, Java supports the following fundamental concepts:

• Polymorphism • Inheritance • Encapsulation • Abstraction • Classes • Objects • Instance • Method • Message Parsing

In this chapter, we will look into the concepts Classes and Objects.

Object - Objects have states and behaviors. Example: A dog has states-color, name, breed as well as behaviors -wagging, barking, eating. An object is an instance of a class.

Class - A class can be defined as a template/blue print that describes the behaviors/states that object of its type support.

Objects  in  Java:   Let us now look deep into what are objects. If we consider the real-world we can find many objects around us, Cars, Dogs, Humans, etc. All these objects have a state and behavior.

If we consider a dog, then its state is - name, breed, color, and the behavior is - barking, wagging, running

If you compare the software object with a real world object, they have very similar characteristics.

Software objects also have a state and behavior. A software object's state is stored in fields and behavior is shown via methods.

So in software development, methods operate on the internal state of an object and the object-to-object communication is done via methods.

CHAPTER

4

no comments were posted
This is only a preview
3 shown on 320 pages
Download the document