FULL STACK CODING PROGRAM

JOIN OUR PROGRAM AND BUILD YOUR CAREER IN TECH WITH EDULADDER.


NEW JOINEES WILL RECIVE CRYPTO WORTH OF RS 5000/-.


WHITE PAPER APPLY NOW HERE

Real Problems! Real Experts!

An unparalleled, New approach On creative thinking and problem solving.


The Eduladder is a community of students, teachers, and programmers just interested to make you pass any exams. So we help you to solve your academic and programming questions fast.
In eduladder you can Ask,Answer,Listen,Earn and Download Questions and Question papers.
Watch related videos of your favorite subject.
Connect with students from different parts of the world.
Apply or Post Jobs, Courses ,Internships and Volunteering opportunity. For FREE
See Our team
Wondering how we keep quality?
Got unsolved questions? Ask Questions


You are here:Open notes-->VTU-->java-notes-for-7th-sem

java notes for 7th sem

Java and J2EE (06IS753) Dept. of ISE , SJBIT Java and J2EE Scheme and Syllabus Subject Code: 06IS753 I.A. Marks: 25 Hours / Week: 04 Exam Hours: 03 Total Hours: 52 Exam Marks: 100 PART - A UNIT - 1 INTRODUCTION TO JAVA: Java and Java applications; Java Development Kit (JDK); Java is interpreted, Byte Code, JVM; Object-oriented programming; Simple Java programs. Data types and other tokens: Boolean variables, int, long, char, operators, arrays, white spaces, literals, assigning values; Creating and destroying objects; Access specifiers. Operators and Expressions: Arithmetic Operators, Bitwise operators, Relational operators, The Assignment Operator, The? Operator; Operator Precedence; Logical expression; Type casting; Strings Control Statements: Selection statements, iteration statements, Jump Statements. 6 Hours UNIT - 2 CLASSES, INHERITANCE, EXCEPTIONS, APPLETS: Classes: Classes in Java; Declaring a class; Class name; Super classes; Constructors; Creating instances of class; Inner classes. Inheritance: Simple, multiple, and multilevel inheritance; Overriding, overloading. Exception handling: Exception handling in Java. The Applet Class: Two types of Applets; Applet basics; Applet Architecture; An Applet skeleton; Simple Applet display methods; Requesting repainting; Using the Status Window; The HTML APPLET tag; Passing parameters to Applets; getDocumentbase() and getCodebase(); ApletContext and showDocument(); The AudioClip Interface; The AppletStub Interface; Output to the Console. 6 Hours UNIT - 3 MULTI THREADED PROGRAMMING, EVENT HANDLING: Multi Threaded Programming: What are threads? How to make the classes threadable; Extending threads; Implementing runnable; Synchronization; Changing state of the thread; Bounded buffer problems, read-write problem, producer-consumer problems. Event Handling: Two event handling mechanisms; The delegation event model; Event classes; Sources of events; Event listener interfaces; Using the delegation event model; Adapter classes; Inner classes. 7 Hours UNIT - 4 SWINGS: Swings: The origins of Swing; Two key Swing features; Components and Containers; The Swing Packages; A simple Swing Application; Create a Swing Applet; Jlabel and Java and J2EE (06IS753) Dept. of ISE , SJBIT ImageIcon; JTextField;The Swing Buttons; JTabbedpane; JScrollPane; JList; JComboBox; JTable. 7 Hours PART - B UNIT - 5 JAVA 2 ENTERPRISE EDITION OVERVIEW, DATABASE ACCESS: Overview of J2EE and J2SE. The Concept of JDBC; JDBC Driver Types; JDBC Packages; A Brief Overview of the JDBC process; Database Connection; Associating the JDBC/ODBC Bridge with the Database; Statement Objects; ResultSet; Transaction Processing; Metadata, Data types; Exceptions. 6 Hours UNIT - 6 SERVLETS: Background; The Life Cycle of a Servlet; Using Tomcat for Servlet Development; A simple Servlet; The Servlet API; The Javax.servlet Package; Reading Servlet Parameter; The Javax.servlet.http package; Handling HTTP Requests and Responses; Using Cookies; Session Tracking. 7 Hours UNIT - 7 JSP, RMI: Java Server Pages (JSP): JSP, JSP Tags, Tomcat, Request String, User Sessions, Cookies, Session Objects. Java Remote Method Invocation: Remote Method Invocation concept; Server side, Client side. 6 Hours UNIT - 8 ENTERPRISE JAVA BEANS: Enterprise java Beans; Deployment Descriptors; Session Java Bean, Entity Java Bean; Message-Driven Bean; The JAR File. 7 Hours TEXT BOOKS: 1. Java - The Complete Reference – Herbert Schildt, 7th Edition, Tata McGraw Hill, 2007. 2. J2EE - The Complete Reference – Jim Keogh, Tata McGraw Hill, 2007. REFERENCE BOOKS: 1. Introduction to JAVA Programming – Y. Daniel Liang, 6th Edition, Pearson Education, 2007. 2. The J2EE Tutorial – Stephanie Bodoff et al, 2nd Edition, Pearson Education, 2004. Java and J2EE (06IS753) Dept. of ISE , SJBIT UNIT No. Table of Contents Page No. 1 INTRODUCTION TO JAVA 1-12 Java and Java applications; Java Development Kit (JDK); Java is interpreted, Byte Code. 1 JVM , Object-oriented programming; Simple Java programs 1 Data types and other tokens: Boolean variables, int, long, char, operators, arrays, white spaces, literals, 3 Assigning values ,Creating and destroying objects; Access specifiers. 4 operators and Expressions: Arithmetic Operators, Bitwise operators, Relational operators, The Assignment Operator, The ? Operator; Operator Precedence; Logical expression; 4 Type casting; Strings , Control Statements: Selection statements, iteration statements, Jump Statements 6 2 CLASSES, INHERITANCE, EXCEPTIONS, APPLETS 13-28 Classes: Classes in Java; Declaring a class; Class name; Super classes; Constructors; Creating instances of class; Inner classes 13 Inheritance: Simple, multiple, and multilevel inheritance; Overriding, overloading. 15 Exception handling: Exception handling in Java. 18 The Applet Class: Two types of Applets; Applet basics; Applet Architecture; An Applet skeleton; Simple Applet display method 20 Requesting repainting; Using the Status Window; The HTML APPLET tag; Passing parameters to Applets; getDocumentbase() and getCodebase() 22 ApletContext and showDocument(); The AudioClip Interface; The AppletStub Interface; Output to the Console. 23 3 MULTI THREADED PROGRAMMING, EVENT HANDLING 29-41 Multi Threaded Programming: What are threads? How to make the classes threadable; 29 Java and J2EE (06IS753) Dept. of ISE , SJBIT Extending threads; Implementing runnable; Synchronization; Changing state of the thread; Bounded buffer problems 30 Read-write problem, producer-consumer problems 33 Two event handling mechanisms 35 The delegation event model; Event classes; Sources of events 36 Event listener interfaces; Using the delegation event model 37 Adapter classes; Inner classes 39 4 SWINGS 42-49 Swings: The origins of Swing; Two key Swing features 42 Components and Containers 42 The Swing Packages; A simple Swing Application 45 Create a Swing Applet 46 Jlabel and ImageIcon 47 JTextField;The Swing Buttons; JTabbedpane 48 JScrollPane; JList; JComboBox; JTable 49 5 JAVA 2 ENTERPRISE EDITION OVERVIEW, DATABASE ACCESS: 50-53 Overview of J2EE and J2SE. 50 The Concept of JDBC; JDBC Driver Types; JDBC Packages 50 A Brief Overview of the JDBC process; Database Connection; 50 Associating the JDBC/ODBC Bridge with the Database; 51 Statement Objects ,ResultSet; 52 Transaction Processing Metadata,. Data types; Exceptions. 53 6 SERVLETS 54-60 Background 54 The Life Cycle of a Servlet; Using Tomcat for Servlet Development; A simple Servlet 54 The Servlet API; The Javax.servlet Package 55 Java and J2EE (06IS753) Dept. of ISE , SJBIT Reading Servlet Parameter; The Javax.servlet.http package 56 Handling HTTP Requests and Responses 57 Using Cookies 58 Session Tracking. 59 7 JSP, RMI 61-65 Java Server Pages (JSP): JSP, JSP Tags 61 Tomcat, Request String, User Sessions 62 Cookies, Session Objects 64 Java Remote Method Invocation: Remote Method Invocation concept 64 Server side 65 Client side. 65 KSIMC 65 Dic single windows agency SISI,NSIC,SIDBI,KSFC 65 8 ENTERPRISE JAVA BEANS 66-68 Enterprise java Beans; 66 Deployment Descriptors 67 Session Java Bean 67 Entity Java Bean; 67 Message-Driven Bean, The JAR File. 68 Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 1 UNIT-1 INTRODUCTION TO JAVA Java and Java applications; Java Development Kit (JDK); Java is interpreted, Byte Code, JVM; Objectoriented programming; Simple Java programs. Data types and other tokens: Boolean variables, int, long, char, operators, arrays, white spaces, literals, assigning values; Creating and destroying objects; Access specifiers. Operators and Expressions: Arithmetic Operators, Bitwise operators, Relational operators, The Assignment Operator, The? Operator; Operator Precedence; Logical expression; Type casting; Strings Control Statements: Selection statements, iteration statements, Jump Statements. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 2 1.1. Introduction to Java 􀁸 Java is an object-oriented programming language developed by Sun Microsystems, a company best known for its high-end Unix workstations. 􀁸 Java is modeled after C++ 􀁸 Java language was designed to be small, simple, and portable across platforms and operating systems, both at the source and at the binary level (more about this later). 􀁸 Java also provides for portable programming with applets. Applets appear in a Web page much in the same way as images do, but unlike images, applets are dynamic and interactive. 􀁸 Applets can be used to create animations, figures, or areas that can respond to input from the reader, games, or other interactive effects on the same Web pages among the text and graphics. 1.1.2 Java Is Platform-Independent Platform-independence is a program's capability of moving easily from one computer system to another. 􀁸 Platform independence is one of the most significant advantages that Java has over other programming languages, particularly for systems that need to work on many different platforms. 􀁸 Java is platform-independent at both the source and the binary level. 1.1.2 Java Development Kit (JDK)- Byte code 􀁸 Bytecodes are a set of instructions that look a lot like machine code, but are not specific to any one processor 􀁸 Platform-independence doesn't stop at the source level, however. Java binary files are also platform-independent and can run on multiple platforms without the need to recompile the source. Java binary files are actually in a form called bytecodes. 1.1.3 Object-Oriented Programming 􀁸 Many of Java's object-oriented concepts are inherited from C++, the language on which it is based, but it borrows many concepts from other object-oriented languages as well. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 3 􀁸 Java includes a set of class libraries that provide basic data types, system input and output capabilities, and other utility functions. 􀁸 These basic classes are part of the Java development kit, which also has classes to support networking, common Internet protocols, and user interface toolkit functions. 􀁸 Because these class libraries are written in Java, they are portable across platforms as all Java applications are. 1.1.4 Creating a simple Java Program Hello World example : class HelloWorld { public static void main (String args[]) { System.out.println("Hello World! "); } } This program has two main parts: 􀁸 All the program is enclosed in a class definition—here, a class called Hello World. 􀁸 The body of the program (here, just the one line) is contained in a method (function) called main(). In Java applications, as in a C or C++ program, main() is the first method (function) that is run when the program is executed. 1.1.5 Compiling the above program : 􀁸 In Sun's JDK, the Java compiler is called javac. javac HelloWorld.java 􀁸 When the program compiles without errors, a file called HelloWorld.class is created, in the same directory as the source file. This is the Java bytecode file. 􀁸 Then run that bytecode file using the Java interpreter. In the JDK, the Java interpreter is called simply java. java HelloWorld If the program was typed and compiled correctly, the output will be : "Hello World!" 1.2 Variables and Data Types 􀁸 Variables are locations in memory in which values can be stored. They have a name, Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 4 a type, and a value. 􀁸 Java has three kinds of variables: instance variables, class variables, and local variables. 􀁸 Instance variables, are used to define attributes or the state for a particular object. Class variables are similar to instance variables, except their values apply to all that class's instances (and to the class itself) rather than having different values for each object. 􀁸 Local variables are declared and used inside method definitions, for example, for index counters in loops, as temporary variables, or to hold values that you need only inside the method definition itself Variable declarations consist of a type and a variable name: Examples : int myAge; String myName; boolean isTired; 1.2.1 Integer types. Ty pe Si z e Ran ge byte 8 bits —128 to 127 short 16 bits —32,768 to 32,767 int 32 bits —2,147,483,648 to 2,147,483,647 —9223372036854775808 to 9223372036854775807 long 64 bits 1.2.2 Floating-point This is used for numbers with a decimal part. Java floating-point numbers are compliant with IEEE 754 (an international standard for defining floating-point numbers and arithmetic). There are two floating-point types: float (32 bits, single-precision) and double (64 bits, double-precision). 1.2.3 Char Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 5 The char type is used for individual characters. Because Java uses the Unicode character set, the char type has 16 bits of precision, unsigned. 1.2.4 Boolean The boolean type can have one of two values, true or false. Note that unlike in other Clike languages, boolean is not a number, nor can it be treated as one. All tests of Boolean variables should test for true or false. 1.2.5 Literals Literals are used to indicate simple values in your Java programs. Number Literals 􀁸 There are several integer literals. 4, for example, is a decimal integer literal of type int 􀁸 A decimal integer literal larger than an int is automatically of type long. 􀁸 Floating-point literals usually have two parts: the integer part and the decimal part— for example, 5.677777. Boolean Literals Boolean literals consist of the keywords true and false. These keywords can be used anywhere needed a test or as the only possible values for boolean variables. 1.2.6 Character Literals Character literals are expressed by a single character surrounded by single quotes: 'a', '#', '3', and so on. Characters are stored as 16-bit Unicode characters. 1.3 Expressions and Operators 􀁸 Expressions are the simplest form of statement in Java that actually accomplishes something. Expressions are statements that return a value. 􀁸 Operators are special symbols that are commonly used in expressions. Arithmetic and tests for equality and magnitude are common examples of expressions. Because they return a valuethe value can be assigned to a variable or test that value in other Java statements. Operators in Java include arithmetic, various forms of assignment, increment and decrement, and logical operations. 1.3.1 Arithmetic Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 6 Java has five operators for basic arithmetic Arithmetic operators. Operator Meaning Exam ple + Addition 3 + 4 — Subtraction 5 — * Multiplication 57 * 5 / Division 14 / 7 % Modulus 20 % 7 Example program : class ArithmeticTest { public static void main (String args[]) { short x = 6; int y = 4; float a = 12.5f; float b = 7f; System.out.println("x is " + x + ", y is " + y); System.out.println("x + y = " + System.out.println("x - y = " + System.out.println("x / y = " + System.out.println("x % y = " + ( x ( x ( x ( x + y)); - y)); / y)); % y)); + b; System.out.println("a is " + a + ", b is " System.out.println("a / b = " + (a / b)); } } Assignment operators. Expression Meaning x += y x = x + y x —= y x = x — y x *= y x = x * y x = x / y x /= y Incrementing and Decrementing x++ increments the value of x by 1 just as if you had used the expression x = x + 1. Similarly x-- decrements the value of x by 1. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 7 Exercise : write the difference between : y = x++; y = ++x; Comparison operators. Operator Meaning Example == Equal x == 3 != Not equal x != 3 < Less than x < > Greater than 3x > <= Less than or equal 3 to x <= >= Greater than or equal to x3 >= 3 Logical Operators 􀁸 Expressions that result in boolean values (for example, the comparison operators) can be combined by using logical operators that represent the logical combinations 􀁸 AND, OR, XOR, and logical NOT. 􀁸 For AND combinations, use either the & or &&. The expression will be true only if both expressions are also true 􀁸 For OR expressions, use either | or ||. OR expressions result in true if either or both of the operands is also true 􀁸 In addition, there is the XOR operator ^, which returns true only if its operands are different (one true and one false, or vice versa) and false otherwise (even if both are true). 􀁸 In general, only the && and || are commonly used as actual logical combinations. &, |, and ^ are more commonly used for bitwise logical operations. 􀁸 For NOT, use the ! operator with a single expression argument. The value of the NOT expression is the negation of the expression; if x is true, !x is false. Bitwise Operators These are used to perform operations on individual bits in integers. Operator Meaning & Bitwise AND | Bitwise OR ^ Bitwise XOR Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 8 << Left shift >> Right shift >>> Zero fill right shift ~ Bitwise complement <<= Left shift assignment (x = x << y) >>= Right shift assignment (x = x >> y) >>>= Zero fill right shift assignment (x = x >>> y) x&=y AND assignment (x = x & y) x|=y OR assignment (x + x | y) x^=y XOR assignment (x = x ^ y) Operator Precedence Operator precedence determines the order in which expressions are evaluated. This, in some cases, can determine the overall value of the expression. For example, take the following expression: y = 6 + 4 / 2 Depending on whether the 6 + 4 expression or the 4 / 2 expression is evaluated first, the value of y can end up being 5 or 8. In general, increment and decrement are evaluated before arithmetic, arithmetic expressions are evaluated before comparisons, and comparisons are evaluated before logical expressions. Assignment expressions are evaluated last. 1.4 Arrays Arrays in Java are actual objects that can be passed around and treated just like other objects. Arrays are a way to store a list of items. Each slot of the array holds an individual element, and you can place elements into or change the contents or those slots as you need to. Three steps to create an array: 1. Declare a variable to hold the array. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 9 2. Create a new array object and assign it to the array variable. 3. Store things in that array. E.g. String[] names; names = new String[10]; names [1] = “n1”; names[2] = ‘n2’; . . . 1.4.1 Multidimensional Arrays Java does not support multidimensional arrays. However, you can declare and create an array of arrays (and those arrays can contain arrays, and so on, for however many dimensions you need), and access them as you would C-style multidimensional arrays: int coords[] [] = new int[12] [12]; coords[0] [0] = 1; coords[0] [1] = 2; 1.5 Control Statement 1.5.1 if Conditionals 􀁸 The if conditional, which enables you to execute different bits of code based on a simple test in Java, is nearly identical to if statements in C. 􀁸 if conditionals contain the keyword if, followed by a boolean test, followed by a statement (often a block statement) to execute if the test is true: 􀁸 if (x < y) System.out.println("x is smaller than y"); An optional else keyword provides the statement to execute if the test is false: if (x < y) System.out.println("x is smaller than y"); else System.out.println("y is bigger"); 1.5.2 The Conditional Operator An alternative to using the if and else keywords in a conditional statement is to use the conditional operator, sometimes called the ternary operator. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 10 The conditional operator is a ternary operator because it has three terms. Syntax : test ? trueresult : falseresult The test is an expression that returns true or false, just like the test in the if statement. If the test is true, the conditional operator returns the value of trueresult; if it's false, it returns the value of falseresult. For example, the following conditional tests the values of x and y, returns the smaller of the two, and assigns that value to the variable smaller: int smaller = x < y ? x : y; The conditional operator has a very low precedence; that is, it's usually evaluated only after all its subexpressions are evaluated. The only operators lower in precedence are the assignment operators.. 1.5.3 switch Conditionals This is the switch or case statement; in Java it's switch and behaves as it does in C: switch (test) { case valueOne: resultOne; break; case valueTwo: resultTwo; break; case valueThree: resultThree; break; ... default: defaultresult; } In the switch statement, the test (a primitive type of byte, char, short, or int) is compared with each of the case values in turn. If a match is found, the statement, or statements after the test is executed. If no match is found, the default statement is executed. The default is optional, so if there isn't a match in any of the cases and default doesn't exist, the switch statement completes without doing anything. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 11 1.5.4 for Loops The for loop, as in C, repeats a statement or block of statements some number of times until a condition is matched. for loops are frequently used for simple iteration in which you repeat a block of statements a certain number of times and then stop, but you can use for loops for just about any kind of loop. The for loop in Java looks roughly like this: for (initialization; test; increment) { statements; } The start of the for loop has three parts: 􀁸 Initialization is an expression that initializes the start of the loop. If you have a loop index, this expression might declare and initialize it, for example, int i = 0. Variables that you declare in this part of the for loop are local to the loop itself; they cease existing after the loop is finished executing. Test is the test that occurs after each pass of the loop. The test must be a boolean expression or function that returns a boolean value, for example, i < 10. If the test is true, the loop executes. Once the test is false, the loop stops executing • Increment is any expression or function call. Commonly, the increment is used to change the value of the loop index to bring the state of the loop closer to returning false and completing. The statement part of the for loop is the statements that are executed each time the loop iterates. Just as with if, you can include either a single statement here or a block; the previous example used a block because that is more common. Here's an example of a for loop that initializes all the values of a String array to null strings: String strArray[] = new String[10]; int i; // loop index for (i = 0; i < strArray.length; i++) strArray[i] = ""; 1.5.5 while and do Loops Finally, there are while and do loops. while and do loops, like for loops, enable a block of Java code to be executed repeatedly until a specific condition is met. Whether you use a for loop, a while, or a do is mostly a matter of your pro gramming style. while and do loop, are exactly the same as in C and C++ except their test condition must be a boolean. 1.5.6 while Loops Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 12 The while loop is used to repeat a statement or block of statements as long as a particular condition is true. while loops look like this: while (condition) { bodyOfLoop; } The condition is a boolean expression. If it returns true, the while loop executes the statements in bodyOfLoop and then tests the condition again, repeating until the condition is false: int count = 0; while ( count < array 1 .length && array 1 [count] !=0) { array2[count] = (float) array1[count++]; } 1.5.7 do...while Loops The do loop is just like a while loop, except that do executes a given statement or block until the condition is false. The main difference is that while loops test the condition before looping, making it possible that the body of the loop will never execute if the condition is false the first time it's tested. do loops run the body of the loop at least once before testing the condition. do loops look like this: do { bodyOfLoop; } while (condition); Here, the bodyOfLoop part is the statements that are executed with each int x = 1; do { System.out.println("Looping, round " + x); x++; } while (x <= 10); Here's the output of these statements: Looping, round 1 Looping, round 2 Looping, round 3 Looping, round 4 Looping, round 5 Looping, round 6 Looping, round Looping, round Looping, round Looping, round Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 13 UNIT-2: CLASSES, INHERITANCE, EXCEPTIONS, APPLETS 􀁸 Classes: Classes in Java; Declaring a class; Class name; Super classes; Constructors; Creating instances of class; Inner classes. Inheritance: Simple, multiple, and multilevel inheritance; Overriding, overloading. 􀁸 Exception handling: Exception handling in Java. 􀁸 The Applet Class: Two types of Applets; Applet basics; Applet Architecture; An Applet skeleton; Simple Applet display methods; Requesting repainting; Using the Status Window; The HTML APPLET tag; Passing parameters to Applets; getDocumentbase() and getCodebase(); ApletContext and showDocument(); The AudioClip Interface; The AppletStub Interface; Output to the Console. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 14 2.1. Defining Classes, Class Name 􀁸 To define a class, use the class keyword and the name of the class: class MyClassName { ... } 􀁸 If this class is a subclass of another class, use extends to indicate the superclass of this class: class myClassName extends mySuperClassName { ... } 􀁸 If this class implements a specific interface, use implements to refer to that interface: class MyRunnableClassName implements Runnable { ... } Super Classes 􀁸 Each class has a superclass (the class above it in the hierarchy), and each class can have one or more subclasses (classes below that class in the hierarchy). Classes further down in the hierarchy are said to inherit from classes further up in the hierarchy. 􀁸 Subclasses inherit all the methods and variables from their superclasses—that is, in any particular class, if the superclass defines behavior that your class needs, you don't have to redefine it or copy that code from some other class. Your class automatically gets that behavior from its superclass, that superclass gets behavior from its superclass, and so on all the way up the hierarchy. 􀁸 At the top of the Java class hierarchy is the class Object; all classes inherit from this one superclass. Object is the most general class in the hierarchy; it defines behavior inherited by all the classes in the Java class hierarchy. Each class farther down in the hierarchy adds more information and becomes more tailored to a specific purpose. E.g. public class HelloAgainApplet extends java.applet.Applet { } Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 15 2.2 Constructors, Creating instances of a class The following example demonstrates the creation of classes, creating objects and the usage of constructors class Motorcycle { } create some instance variables for this class String make; String color; boolean engineState; Add some behavior (methods) to the class. void startEngine() { if (engineState == true) System.out.println("The engine is already on."); else { engine State = true; System.out.println("The engine is now on."); } } The program looks like this now : class Motorcycle { String make; String color; boolean engineState; void startEngine() { if (engineS tate == true) System.out.println("The else { engineState = true; System.out.println("The } } engine is already on."); engine is now on."); } The showAtts method prints the current values of the instance variables in an instance of your Motorcycle class. Here's what it looks like: void showAtts() { System. out .println ("This motorcycle is a " + color + " " + make); if (engineState == true) System.out.println("The engine is on."); else System.out.println("The engine is off."); Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 16 The showAtts method prints two lines to the screen: the make and color of the motorcycle object, and whether or not the engine is on or off. 2.2.1 Add the main method public static void main (String args[]) { Motorcycle m = new Motorcycle(); m.make = "Yamaha RZ350"; m.color = "yellow"; System.out.println("Calling showAtts..."); m.showAtts(); System.out.println("——— — "); System.out.println("Starting engine..."); m.startEngine(); System.out.println("————"); System.out.println("Calling showAtts..."); m.showAtts(); System.out.println("——— — "); System.out.println("Starting engine..."); m.startEngine(); } With the main() method, the Motorcycle class is now an application, and you can compile it again and this time it'll run. Here's how the output should look: Calling showAtts... This motorcycle is a yellow Yamaha RZ350 The engine is off. Starting engine... The engine is now on. Calling showAtts... This motorcycle is a yellow Yamaha RZ350 The engine is on. Starting engine... The engine is already on. 2.3. Inheritance Inheritance is a powerful mechanism that means when you write a class you only have to specify how that class is different from some other class; inheritance will give you automatic access to the information contained in that other class. With inheritance, all classes—those you write, those from other class libraries that you use, and those from the standard utility classes as well—are arranged in a strict hierarchy Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 17 2.3.1 Single and Multiple Inheritance Single inheritance means that each Java class can have only one superclass (although any given superclass can have multiple subclasses). In other object-oriented programming languages, such as C++, classes can have more than one superclass, and they inherit combined variables and methods from all those classes. This is called multiple inheritance. Multiple inheritance can provide enormous power in terms of being able to create classes that factor just about all imaginable behavior, but it can also significantly complicate class definitions and the code to produce them. Java makes inheritance simpler by being only singly inherited. 2.3.2 Overriding Methods 􀁸 When a method is called on an object, Java looks for that method definition in the class of that object, and if it doesn't find one, it passes the method call up the class hierarchy until a method definition is found. 􀁸 Method inheritance enables you to define and use methods repeatedly in subclasses without having to duplicate the code itself. 􀁸 However, there may be times when you want an object to respond to the same methods but have different behavior when that method is called. In this case, you can override that method. Overriding a method involves defining a method in a subclass that has the same signature as a method in a superclass. Then, when that method is called, the method in the subclass is found and executed instead of the one in the superclass. 2.3.3 Creating Methods that Override Existing Methods To override a method, all you have to do is create a method in your subclass that has the same signature (name, return type, and parameter list) as a method defined by one of your class's superclasses. Because Java executes the first method definition it finds that matches the signature, this effectively "hides" the original method definition. Here's a simple example The PrintClass class. class PrintClass { int x = 0; int y = 1; void printMe() { System.out.println("X is " + x + ", Y is " + y); System.out.println("I am an instance of the class " + this.getClass().getName()); Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 18 Create a class called PrintSubClass that is a subclass of (extends) PrintClass. class PrintSubClass extends PrintClass { int z = 3; public static void main(String args[]) { PrintSubClass obj = new PrintSubClass(); obj .printMe(); } } Here's the output from PrintSubClass: X is 0, Y is 1 I am an instance of the class PrintSubClass In the main() method of PrintSubClass, you create a PrintSubClass object and call the printMe() method. Note that PrintSubClass doesn't define this method, so Java looks for it in each of PrintSubClass's superclasses—and finds it, in this case, in PrintClass. because printMe() is still defined in PrintClass, it doesn't print the z instance variable. To call the original method from inside a method definition, use the super keyword to pass the method call up the hierarchy: void myMethod (String a, String b) { // do stuff here super.myMethod(a, b); // maybe do more stuff here } The super keyword, somewhat like the this keyword, is a placeholder for this class's superclass. You can use it anywhere you can use this, but to refer to the superclass rather than to the current class. 2.4 Exception handling An exception is an event that occurs during the execution of a program that disrupts the normal flow of instructions. 2.4.1 The Three Kinds of Exceptions 􀁸 Checked exceptions are subject to the Catch or Specify Requirement. All exceptions are checked exceptions, except for those indicated by Error, RuntimeException, and their subclasses. 􀁸 Errors are not subject to the Catch or Specify Requirement. Errors are those exceptions indicated by Error and its subclasses. 􀁸 Runtime exceptions are not subject to the Catch or Specify Requirement. Runtime exceptions are those indicated by Runtime Except ion and its subclasses. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 19 Valid Java programming language code must honor the Catch or Specify Requirement. This means that code that might throw certain exceptions must be enclosed by either of the following: • A try statement that catches the exception. The try must provide a handler for the exception, as described in Catching and Handling Exceptions. • A method that specifies that it can throw the exception. The method must provide a throws clause that lists the exception, as described in Specifying the Exceptions Thrown by a Method. Code that fails to honor the Catch or Specify Requirement will not compile. This example describes how to use the three exception handler components — the try, cat ch, and finally blocks 2.4.2 try block • The first step in constructing an exception handler is to enclose the code that might throw an exception within a try block. In general, a try block looks like the following. try { code } catch and finally blocks . . . Example : private Vector vector; private static final int SIZE = 10; PrintWriter out = null; try { System.out.println("Entered try statement"); out = new PrintWriter(new FileWriter("OutFile.txt")); for (int i = 0; i < SIZE; i++) { out.println("Value at: " + i + " = " + vector.elementAt(i)); } } The catch Blocks Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 20 You associate exception handlers with a try block by providing one or more catch blocks directly after the try block. No code can be between the end of the try block and the beginning of the first catch block. try { } catch (ExceptionType name) { } catch (ExceptionType name) { } Each catch block is an exception handler and handles the type of exception indicated by its argument finally block The runtime system always executes the statements within the finally block regardless of what happens within the try block. So it's the perfect place to perform cleanup. The following finally block for the write Li st method cleans up and then closes the PrintWriter. finally { if (out != null) { System.out.println("Closing PrintWriter"); out . close(); } else { System.out.println("PrintWriter not open"); } } 2.5 The Applet Class Applet Basics 􀁸 An applet is a special kind of Java program that a browser enabled with Java technology can download from the internet and run. 􀁸 An applet is typically embedded inside a web-page and runs in the context of the browser. 􀁸 An applet must be a subclass of the java.applet.Applet class, which provides the standard interface between the applet and the browser environment. 􀁸 Simple example : public class HelloWorld extends java.applet.Applet { public void paint(java.awt.Graphics g) { Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 21 g.drawString("Hello World!",50,25); System.out.println("Hello World!"); } } An applet can be included in an HTML page, much in the same way an image is included in a page. When Java technology enabled Browser is used to view a page that contains an applet, the applet's code is transferred to your system and executed by the browser's Java Virtual Machine (JVM) Two Types of Applets 1 .Local applet - operate in single machine browser which is not connected in network, 2.Remote applet - remote applet operate over internet via network. Applet Architecture Event driven : An applet waits until an event occurs. The AWT notifies the applet about an event by calling event handler that has been provided by the applet. The applet takes appropriate action and then quickly return control to AWT All Swing components descend from the AWT Container class User initiates interaction with an Applet (and not the other way around) An Applet Skeleton import java.awt.*; import javax.swing.*; /* */ public class AppletSkel extends JApplet { // Called first. public void init() { // initialization } /* Called second, after init(). Also called whenever the applet is restarted. */ Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 22 public void start() { // start or resume execution } // Called when the applet is stopped. public void stop () { // suspends execution } /* Called when applet is terminated. This is the last method executed. */ public void destroy() { // perform shutdown activities } // Called when an applet's window must be restored. public void paint(Graphics g) { // redisplay contents of window } } 5.1 Simple Applet Display Methods void drawstring(String message, int x, int y) - void setBackground(Color newColor) void setForeground(Color newColor) Example : public class SimpleApplet extends Applet { public void paint (Graphics g) { g.drawString("First Applet", 50, 50 ); } } Requesting Repainting repaint( ) function is called when you have changed something and want your changes to show up on the screen repaint( ) is a request--it might not happen When you call repaint( ), Java schedules a call to update(Graphics g) Here's what update does: public void update(Graphics g) { // Fills applet with background color, then Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 23 paint(g); Using The Status Window Syntax : public void showStatus(String status) Parameters: status - a string to display in the status window. Requests that the argument string be displayed in the "status window". Many browsers and applet viewers provide such a window, where the application can inform users of its current state. Example : import java.applet. *; import java.awt.*; public class NetExample extends Applet { private AppletContext browser = null; private Button showStatus = new Button("Show Status"); public void init() { Panel panel = new Panel(); panel.setLayout(new GridLayout(1 ,2)); panel.add(showStatus); setLayout(new BorderLayout()); add("South", panel); browser = getAppletContext(); } public boolean action(Event e, Object o) { if (e.target == showStatus) browser.showStatus("Here is something for your status line ..."); return true; } } 2.5 The HTML Applet Tag Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 24 􀁸 The APPLET tag is used to start an applet from both an HTML document and from an applet viewer. 􀁸 An applet viewer will execute each APPLET tag that it finds in a separate window,while web browsers like Netscape Navigator, Internet Explorer, and HotJava will allow many applets on a single page. 􀁸 The syntax for the standard APPLET tag is shown here. Bracketed items are optional. < APPLET [CODEBASE = codebaseURL] CODE = appletFile [ALT = alte rnate Text] [NAME = appletInstanceName] WIDTH = pixels HEIGHT = pixels [ALIGN = alignment] [VSPACE = pixels] [HSPACE = pixels] > [< PARAM NAME = AttributeName VALUE = Attribute Value>] [< PARAM NAME = AttributeName2 VALUE = Attribute Value>] . . . [HTML Displayed in the absence of Java] 􀁸 CODEBASE is an optional attribute that specifies the base URL of the applet code, which is the directory that will be searched for the applet’s executable class file (specified by the CODE tag). The HTML document’s URL directory is used as the CODEBASE if this attribute is not specified. The CODEBASE does not have to be on the host from which the HTML document was read. 􀁸 CODE is a required attribute that gives the name of the file containing your applet’s compiled .class file. This file is relative to the code base URL of the applet, which is the directory that the HTML file was in or the directory indicated by CODEBASE if set. 􀁸 ALT is an optional attribute used to specify a short text message that should be displayed if the browser understands the APPLET tag but can’t currently run Java applets. This is distinct from the alternate HTML you provide for browsers that don’t support applets. 􀁸 WIDTH AND HEIGHT are required attributes that give the size (in pixels) of the applet display area. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 25 􀁸 ALIGN is an optional attribute that specifies the alignment of the applet. This attribute is treated the same as the HTML IMG tag with these possible values: 􀁸 LEFT, RIGHT, TOP, BOTTOM, MIDDLE, BASELINE, TEXTTOP, ABSMIDDLE, and ABSBOTTOM. VSPACE AND HSPACE These attributes are optional. VSPACE specifies the space, in pixels, above and below the applet. HSPACE specifies the space, in pixels, on each side of the applet. They’re treated the same as the IMG tag’s VSPACE and HSPACE attributes. PARAM NAME AND VALUE The PARAM tag allows you to specify appletspecific arguments in an HTML page. Applets access their attributes with the getParameter( ) method. Passing Parameters to Applets Parameters are passed to applets in NAME=VALUE pairs in tags between the opening and closing APPLET tags. • Inside the applet, you read the values passed through the PARAM tags with the getParameter() method of the java.applet.Applet class. The applet parameter "Message" is the string to be drawn. import java.applet. *; import java.awt.*; public class DrawStringApplet extends Applet { private String defaultMessage = "Hello!"; public void paint(Graphics g) { String inputFromPage = this .getParameter("Mes sage"); if (inputFromPage == null) inputFromPage = defaultMessage; g.drawString(inputFromPage, 50, 25); } } HTML file that references the above applet. Draw String Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 26 This is the applet:

This page will be very boring if your browser doesn't understand Java. getDocumentBase() and getCodeBase() Syntax : public URL getDocumentBase() Returns: the URL of the document that contains this applet. 􀁸 Gets the URL of the document in which this applet is embedded. 􀁸 For example, suppose an applet is contained within the document: http://java.sun.com/products/jdk/1.2/index.html 􀁸 The document base is: http://java.sun.com/products/jdk/1.2/index.html Syntax : public URL getCodeBase() Returns: the base URL of the directory which contains this applet. 􀁸 Gets the base URL. This is the URL of the directory which contains this applet. 􀁸 Example segments: URL codeBase = getCodeBase(); Image myImage = getImage(codeBase, "images/myimage.gif"); Applet Context and showDocument() AppletContext is an interface that provides the means to control the browser environment in which the applet is running. The AudioClip Interface 􀁸 The AudioC lip interface is a simple abstraction for playing a sound clip. 􀁸 Multiple Audi oC lip items can be playing at the same time, and the resulting sound is mixed together to produce a composite. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 27 􀁸 It has the following methods : play public abstract void play() • loop • stop Starts playing this audio clip. Each time this method is called, the clip is restarted from the beginning. public abstract void loop() public abstract voSitda rsttso pp(la) ying this audio clip in a loop. Stops playing this audio clip. The AppletStub Interface The AppletStub interface provides a way to get information from the run-time browser environment. The Applet class provides methods with similar names that call these methods. Methods public abstract boolean isActive () The isActive() method returns the current state of the applet. While an applet is initializing, it is not active, and calls to isActive() return false. The system marks the applet active just prior to calling start(); after this point, calls to isActive() return true. 􀁸 public abstract URL getDocumentBase () The getDocumentBase() method returns the complete URL of the HTML file that loaded the applet. This method can be used with the getImage() or getAudioClip() methods to load an image or audio file relative to the HTML file. 􀁸 public abstract URL getCodeBase () The getCodeBase() method returns the complete URL of the .class file that contains the applet. This method can be used with the getImage() method or the getAudioClip() method to load an image or audio file relative to the .class file. 􀁸 public abstract String getParameter (String name) The getParameter() method allows you to get parameters from tags within the tag of the HTML file that loaded the applet. The name parameter of getParameter() must match the name string of the tag; name is case insensitive. The return value of getParameter() is the value associated with name; it is always a String regardless of the type of data in the tag. If name is not found within the tags of the , getParameter() returns null. 􀁸 public abstract AppletContext getAppletContext () The getAppletContext() method returns the current AppletContext of the applet. This is part of the stub that is set by the system when setStub() is called. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 28 􀁸 public abstract void appletResize (int width, int height) The appletResize() method is called by the resize method of the Applet class. The method changes the size of the applet space to width x height. The browser must support changing the applet space; if it doesn't, the size remains unchanged Output To the Console The drawString method can be used to output strings to the console. The position of the text can also be specified. The following prog shows this concept: public class ConsolePrintApplet1 extends java.applet.Applet { public void init () { // Put code between this line double x = 5.0; double y = 3.0; System.out.println( "x * y = "+ (x*y) ); System.out.println( "x / y = "+ (x/y) ); // // and this line. } // Paint message in the applet window. Public Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 29 UNIT-3 : MULTI THREADED PROGRAMMING, EVENT HANDLING Multi Threaded Programming: What are threads? How to make the classes threadable; Extending threads; Implementing runnable; Synchronization; Changing state of the thread; Bounded buffer problems, read-write problem, producer-consumer problems. Event Handling: Two event handling mechanisms; The delegation event model; Event classes; Sources of events; Event listener interfaces; Using the delegation event model; Adapter classes; Inner classes. Java and J2EE (06IS753) SJBIT, Dept. of ISE Page 30 3.1 What are Threads? A thread is a single path of execution of code in a program. 􀁸 A Multithreaded program contains two or more parts that can run concurrently. 􀁸 Each part of such a program is called a Thread. 􀁸 Each thread defines a separate path of execution. Multithreading is a specialized form of Multitasking. 3.1 How to make the classes threadable A class can be made threadable in one of the following ways (1) implement the Runnable Interface and apply its run() method. (2) extend the Thread class itself. 1. Implementing Runnable Interface: The easiest way to create a thread is to create a class that implements the Runnable interface. To implement Runnable, a class need only implement a single method called run(). The Format of that function is public void run(). 2. Extending Thread: The second way to create a thread is to create a new class that extends the Thread class and then to create an instance of this class. This class must override the run() method which is the entry point for the new thread. 1.2 Extending Threads You can inherit the Thread class as another way to create a thread in your program. When you declare an instance of your class, you’ll also have access to members of the Thread class. Whenever your class inherits the Thread class, you must override the run() method, which is an entry into the new thread. The following example shows how to inherit the Thread class

Editors




You might like this video:Watch more here

Watch more videos from this user Here

Learn how to upload a video over here

Our technologies

Question and answers:- Where every question is asked and answered by community and the best question and answers are voted up so the visitors will get the best answers.

Voice APIs:- Every question and answers have voice APIs by pressing the listen to this question button user will be able to listen to the content which helps students from different background.

Algorithm driven video delivery: Every video from our database is delivered against the content which students are browsing with the help of our proprietary algorithm.

Eduladder career: We have a robust ATS developed on the top of famous open source ATS called open cats the APIs which we have built on the top of the same will deliver the best and suitable job to the visitor who is browsing in our platform.

Real-time chat: We have an extensive amount of geeks behind the scene they are helping you to solve every problem you are facing real-time

Open-source project: Open source is very very important for us that's why we are contributing to open-source development as well. You can figure out and contribute to our open source project on our git hub repo.

About Us

(Below address is used for communiation purposes only we are a group of digital nomads if you like to work with us Please refer Here)

Eduladder
Ravagodalu village
Bollare post
Banglore-560082
  • (+91)8147433408
  • admin[at]eduladder[dot]com

Our licence

User contribution of this website is licenced under CC by sa 3.0


Creative Commons License


With attribution required


Meaning you should always give credit to the original author

*Give a link back to the original author's user profile

*Give a link back to the original question or answer

Use cases

Presidency university

Students from Presidency university are decided to work with eduladder and decided to use eduladder in there every day academic life


The result was interesting the academic performance, as well as the career direction for the students from Presidency University, has increased considerably They said they have learned thinks just apart from academics and also technical

Dayananda Sagar University

Students from Dayananda Sagar University is decided to work with eduladder and decided to use eduladder in there every day academic life


I was never knowing that I can fast up my learning in such a way and increase my technical capability like this - Amog A student from Dayananda Sagar university