CORE JAVA for Beginners: Revised Edition: caite.info: Rashmi Kanta Das: Books. Pdf 32 PLEASE TELL THE LINK TO DOWNLOAD Core Java For Beginners by Rashmi Kanta Das. PLEASE TELL THE LINK TO DOWNLOAD. Objective: Focus on object oriented concepts and java program structure and its installation Core JAVA for Beginners, Rashmi Kanta Das, Vikas. 4.
|Language:||English, Spanish, Indonesian|
|ePub File Size:||22.32 MB|
|PDF File Size:||9.16 MB|
|Distribution:||Free* [*Regsitration Required]|
Core Java Fundamentals by Rashmi Kanta Das - Ebook download as PDF File .pdf), Text File .txt) or read book online. Core-Java-Fundamentals. Core Java for Beginners by Rashmi Kanta Das, , available at Book Depository with free delivery worldwide. Buy How To Crack Interviews In Java by Rashmi Kanta Das PDF Online. ISBN from Vikas Publishing. Download Free Sample and Get Upto.
Top Reviews Most recent Top Reviews. How to know why the exception is generated As Throwable is the child class of Object class it overrides the public String toString method. Setting and initialization of a counter. These classes are known as anonymous inner classes. Do loop. Enter four integer value from keyboard and Sort the elements of array in Ascending order?
Exit controlled. It must run the body of the loop at least once whether the condition is true or false this will not hamper the first execution of the block. Here control condition is test before the start of the loop execution.
It's generally used when you know. The for loop is execute the block of loop for the fixed no. This is the sample program to show the use of for loop and as well as find out the whether a no is odd or even from a given set of no.. Here test is performing at the end of the body of the loop and before that. Of time. Here is an example to show the use of for loop in Java.
Depending upon the position of the condition or the control statement it may be of two types. Contain in the body of the loop. It will not execute the block of statement for once also if the specified condition is false. For loop is the easiest to understand of the loop in Java. Entry Block. The example of this type of loop is: This loop is never execute the statement if the condition is false. Incrementing or decrementing the counter.
Setting and initialization of a counter. Test for a specified condition for execution of loop. Execution of statement in the loop. Step in looping process: Do while statement Exit control loop Here when the test condition is fails control is transfer out of the loop otherwise loop will be continue or repeated. Here the body of the loop may be executed at all if the condition doesn't satisfy for 1st time.
Since the test. This loop will executed till the condition is true. The program to show the use of do while loop. Both initialization and increment in the for statement. Nesting of for loop: Test condition may have any compound relation and testing may not be limited only two loop control variable.
The increment section also must have more than one part. We can setup time delay using null statement using for loop. We can use expression in the assignment statement of initialization of increment section. In case of nesting loop break will exit only a single loop. An early exit from a loop can be accomplished using a break statement. Break and continue: Java permits to jump from one statement to the end or beginning as well as jump out of a loop.
If we want to jump outside nested loop or continue at an outer loop we can use label break or label continue statement. In while and do loops continue causes the control to go directly to test the condition and then continue the iteration process. In for increment section of for is executed before the test condition is evaluated. It is invisible to outside the method.
Local variable scope is the method including constructor where it is declared. In java each local variable has to be initialized before they are used other wise it will give compilation error. An object is known as the instance of a class. It contains variables and methods which are required to modify the values of the variables belonging to the particular class.
Class can be defined as a template or an abstract model. The local variable x may not have been initialized at. The error is given below Exception in thread "main" java. Class templates takes no memory. Therefore it cannot be accessed from out side the method. So inside a method we cannot have more than one variable having same name.
Duplicate local variable x at p. Through new operator constructor is called to create the object of class p. Check it out: If there is no constructor defined by the programmer then JVM automatically recognize the default constructor but. The error is given below. Therefore constructor name must be same as that of the class name. There is only one copy of the static variable exist for a particular class. If the static variable is not initialized then it takes the default value of the data type.
The constructor prj1 is undefined at p. If a method is static then the programmer can call the method without creating the object of the corresponding class. Example 7: It is accessed by the object name inside a static method.
Size of an object is equal to the size of instance variables present in the corresponding class. It is accessed by its name inside non static method. If the instance variable is not initialized then it takes default value of the data type. Same named instance variable cannot be in a single class. Instance variables are known as class member variable.
Here value represents the value that is returned from method. Adding a simple method to class Now we will see how to a simple method to a class. If the method has no parameters. Now we are going to discuss the fundamentals about methods. The return type of a method can be of any valid data type.
It can be any legal identifier. Area is Inside setValue the values of w and h are then assigned to width and height respectively. For example. The area method is used to calculate the area of each rectangle and then the calculated value is returned. It has the same name as the class in which it resides and is syntactically similar to a method. To do so. Constructors do not have any return type. Once defined. This version is shown here: Lets rework the Rectangle example so that the dimensions of a rectangle are automatically initialized when an object is constructed.
It is quite obvious not to have return type of constructors. When you do not explicitly define a constructor for a class. Constructing Rectangle Constructing Rectangle area is This is why the preceding line of code worked in earlier examples of Rectangle class where we have not defined a constructor. Since the constructor gives all rectangles the same dimensions.
Parameterized Constructors. The default constructor automatically initializes all instance variables to zero. The following example defines a parameterized constructor which sets the dimensions of a rectangle as specified by those parameters. Rectangle double w. Now width and height of rec1 will contain the values 10 and 20 respectively. The constructor Rectangle is undefined at RectangleDemo.
I hope reader can sense that when a method is invoked. Overloading Methods When we define two or more methods within the same class that have the same name. When an overloaded method is invoked. In case of method overloading methods may have same or different return types. In OOP terminology method over loading is termed as static binding or static polymorphism. Method overloading is a powerful feature of Java. So it is the duty of the programmer to define the default constructor whenever he is defining a parameterized constructor.
Overloading Constructors We can also overload constructors. The first method takes no parameters. Rectangle defines three constructors to initialize the dimensions of a rectangle in various ways.
Example To get a clear view what this refers to. The answer is finalize method. The syntax of finalize method is: Before an object is garbage collected garbage collector implicitly calls finalize method of object class.
Rectangle defines three constructors to initialize. Java defines the this keyword. Static block Whenever a block is declared with the static keyword. Inside Rectangle. Samita is in Static block Samita is in main method From the above example we can see that first the code inside the static block is executed and afer that the code inside the main method is executed.
By the use of static block we can execute any code before main is called. Lory is in the first Static block Samita is in the second static block. Static block cannot be declared inside any method. Non Static block A block without static key word is known as Non Static block. Static block is executed only once. An interesting fact can we execute a java program without main method? Answer is yes!! Foxed folks Example Test. The statements inside the Non Static block gets executed whenever a object of that class is created.
Lala is in the main method Lory is in the first Non Static block Samita is in the second Non static block Asim is inside the constructor Lory is in the first Non Static block Samita is in the second Non static block Asim is inside the constructor In the above example we can see that whenever a object of the class containing the non Static blocks is created the non Static blocks are executed first sequentially before the codes inside the constructors of the class is executed.
And also we can see that every time when a object of that class is created the Non static blocks are again executed. Billion Dollar Question!! Reference variables behave like pointers. In computer terminology reference variable means such a variable which can hold the address. This is a simple java program. Here p is a class having an instance variable x. To create an object of class p we have to call the default constructor of class p through new operator.
The job of new operator is to allocate memory dynamically during runtime. As I have said reference variable holds the address of a memory location. In java memory management is completely done by JVM. After compiling above java code p. Then, how much memory will be allocated? The amount of memory that is to be allocated depends up on the sum of size of instance variables belonging to that class.
If the class contains a reference variable as an instance variable then 4 byte memory will be allocated for that. In its entire life z will hold the starting address of the memory chunk that has been allocated to it from heap area unless until a new memory chunk is allocated to it by calling the constructor through new operator.
When z will die the memory chunk allocated to it is freed by garbage collector. The swapping problem If you have understood the concept of reference then this problem is going to test your depth. Example-1 p. Output of p. Consider p. When we call the constructor through new operator, memory is allocated from heap. Code k. Similarly the code l. Now the feature is described below.
When control goes back to main method the changes reflected there as shown in the figure. Now consider the 2nd program q. Here inside the method valueSwap of the program q. Hence changes are not reflected. One has to understand the concept that local variables always die when control goes out of a method. But, if the local variables are of. Hash code When an object is created through new operator by calling the constructor of the corresponding class a unique identifier is assigned to the reference variable, known as hash code.
Hash code is allotted by JVM. How to determine the hash code? The method hashCode returns the hash code of the corresponding reference when object is created. Hash code is assigned only to reference variables when memory is allocated from heap area. All the above complexities are not involved here. Local variables of primitive data types do. To get hash code the variable must be of reference type.
I will explain it in array. But, there is a mystery still to be unrevealed. Mystery is about static variables. Static variables are created inside method area.
Objects are inside heap. References are inside stack. Static variables can be accessed by reference variables, but only after the object is created by invoking the constructor of the class through new operator, other wise compilation error will arise. All the objects of a particular class contains pointer which holds the address of same particular memory location inside method area containing the static data member of that class.
Chapter-8 Array Array is a linear homogeneous data structure. It is simply a collection of similar type elements. An element present in the array is accessed through its index. You can define an array either as int[ ] arr; Or as int arr[ ]. But the former one is preferred by most java programmer. A specific element of an array is accessed by the index.
But, things are quite different in case of an array of objects.. The 1st element of the array is accessed by placing 0 in the [ ]. In general to create an array you must follow three steps y y y Declaration Construction Initialization. Construction means calling the new operator to allocate memory for the array variable.
During initialization process the elements of the array is initialized to their default values. In the above program array constructed where it is declared. You can separate the process. Remember that new operator always allocates memory from the heap. If [ ] is associated with variable declaration then, that variable is of reference type. The memory is allocated continuously for mak from heap.
To access the elements present in the array the statement is System. In the above situation java compiler implicitly calls the new operator to allocate memory from heap.
Accessing the element beyond the size of an array throws a compile time error as shown in the program below. If the data type is of object reference then size will be 4 bytes.
Array actually are objects. Array in java provides such technique. This is a useful technique to create a reference of primitive data type. In this procedure the data is stored in heap instead of stack. A closer look at two dimensional array. This allocates a 4 by 5 array and assigns it to twoD. The declaration Int town. If you are good in c.
What exactly town is?. To declare a multidimensional array variable. Really is it happens! The no. Fine lets check it out programmatically. Actually no of rows represents the number of integer references to which town is pointing.
Ok lets have the snap short of memory representation of two dimensional array. As I have said earlier in java when you create an array all the elements are initialized to their default value according to the variable.
This is the reason why the output is null null null lets have a snap short of memory for the above program. Int I. As I have said town is a reference variable pointing to an array of reference of length 3 as shown in the snap shot of memory.
An interesting thing is that reference is created inside heap and memory is allocated to it from the heap also. So through a new operator we allocate memory to it. This is because whenever a reference variable is created in side heap.
Remember that size of a reference variable is 4 bytes. What is arr? As I have mentioned in the previous sections. Demo is the class name. This is.
Let me explain the program: Each element of the array is a reference variable of Demo class. Finally I have to allocate memory to each element present in the array to access the instance variable. Now I can store a value in the instance variable x.
Just check the signature of the method returning the reference else everything is straight forward. Method returning reference to an array See the example below.
Draw this By the help of Array in java? Draw This Triangle By Array? Enter four integer value from keyboard and Sort the elements of array in Ascending order?
Enter 5 integer through an array and find out Smallest Number? Enter A Number and find out the Binary Value? Enter a decimal and find out the octal value? Here X is the super class Y is the child class or derived class Benefits of inheritance y Code reusability because derived class child class copies the member of super class parent class. Java uses extends keyword to support inheritance. To inherit a class. In the terminology of Java.
Inheritance Inheritance is one of the fundamental concepts of object oriented programming. This class can then be inherited by other. To see how. Using inheritance. Therefore it can be inherited with in a package.
By using extend keyword show method is copied to class Y. In side main method object of child class is created but the show method of parent class is invoked. Java I am inherited". Multi-level inheritance. In case of inheritance child class copies members of the parent class those are not private.
It has default access specifier. Hence any object of class Y can invoke show method. Through the use of super keyword programmer can access the members of super class. In this way inheritance facilitates code reusability. Java Hello. Hence the object of class Z can invoke show method which is written in class X. Inside the child class Y showSuper is a method. Through the use of super. To access the parent class i. The first statement inside the showSuper method prints the value of i that belongs to child class Y.
Parent class Child class y Just like super. Inside Default constructor Inside parameterized constructor Calling of constructor In case of inheritance when the programmer creates the child class object by calling the child class constructor through new operator.
Implicit super constructor X is undefined for default constructor. Must define an explicit constructor at demo. If you call the child class parameterized constructor at that time also parent class default constructor is called.
Inside super class default constructor Inside child class parameterized constructor If you are not defining the super class default constructor then inside child class constructor just calls the parent class parameterized constructor as shown in the example below. In case of method over ridding method name, its argument type, no.
Access specifires may be same or least restrictive in the child class where the parent class method is over ridden. Private methods can not be over ridden.
Inside super class parameterized constructor Inside child class parameterized constructor Child Here the fun method is over ridden in Y. So you have to be careful in this issue while performing the method over ridding.
Dynamic method dispatch in case of method over ridding: Method over ridding implements dynamic polymorphism i. So when over ridden method is invoked, it completely depends which class object invokes the method. Inside main method since child class object is created therefore fun method of child class is called although it is called inside the body of the super class constructor.
If you write this. Child Inside super class parameterized constructor Child Inside child class parameterized constructor Child Here also fun method of child class is invoked.
This is because when any overridden method is called it completely depends through which object the. Parent class reference variable can hold the child class object.
In this case also since the object of child class is created, therefore child class method will be invoked. Inside super class parameterized constructor Child.
Since child class object is created there fore child class fun method is called. Behavior of instance variables in case of inheritance.: Instance variables are initialized at the compile time.
If super class instance variable name is same as that of child class instance variable name, when you access such a variable then the reference type matters. Variables are initialized at compile time; hence parent class instance variable is accessed. Behavior of overloaded method in inheritance: Method overloading is done at compile time.
So when you call a overloaded method according to the reference type appropriate method is called. Parent class Parent class Child class Here d is a reference of parent class. So when you write d. Rest of the lines are straight foreward.
Now another important thing. See the program below. Because parent class X does not have a fun method which takes an integer argument. So what we conclude is that when ever programmer deals with aspects those are performed at compile time, the type reference variable matters. When programmer deals with the aspect which are performed at run time the type of object created matters. Here in child class fun method return this, the address of the currents object memory location which is assigned to x.
That is address of d is assigned to x. Parent class Child class Parent class Here out put is straight foreword. If the class is declared as abstract, programmer cannot instantiated that class means cannot create the object of that class. Abstract method means method having declaration only. Abstract method body is not defined where it is declared rather it is declared somewhere else. Syntax to declare an abstract class: If you try to create the object of the abstract class compilation error will arise.
Abstract methods are declared inside the abstract class but defined in their child class. But on the other hand if any of the method of a class is abstract then the class has to be abstract. If any of the child class does not define the abstract method of its super class then that child class has to be declared as abstract class otherwise compilation error will be generated.
Hello Finally I got Life!! There fore abstract class can not use final keyword. But abstract class has to be inherited in order to define its abstract methods.
Using super keyword inside the constructor of child class you can invoke the constructor of abstract parent class. Although you can not call the constructor of abstract class. When a class is declared with final keyword. Constructors can not be abstract.
The methods belonging to an interface are looked up at runtime. In interface variables are implicitly public. Interface declaration is same as class declaration. X constructor Hello Interface First of all interface is a keyword. The advantage of declaring variables within an interface is that they become globally available to all classes and need not be declared explicitly in classes implementing them.
Interface cannot be instantiated. Output is 16 Final keyword: Final keyword is used in class. Wrapper classes are treated as final so these classes have no child class. If the class is declared as final the then the class cannot be inherited. In technical term final method cannot be override. In technical term we cannot assign the value to final variable. If the variable is declared as final then the value of final variable cannot be changed or modified. As i is a final variable.
Logical grouping of classes 2. Nested class can be declared by using any access modifier. For Example: In java outer class or enclosing class is declared by using public or no access modifier. Increased encapsulation 3.
More readable. Define one class within another class is treated as Inner class or nested class. Nested class is able to access private. In java four types of inner classes are used. Key Points of Static Inner Class: Static Inner class access the non-static member of the outer or enclosing class through the instance or object of the outer class. Static Inner class static member access the non-static member of the Inner class through the instance of static Inner Class.
Snapshot About the book. Audience of the Book: This book Useful for competitive examinations. Key Features: Provides useful recapitulation of key knowledge of Java Will be helpful in improving candidates' scores Offers revision exercises in various formats: Section 1: Fill in the Blanks Section 2: True or False Section 3: Multiple Choice Questions Section 4: Short Questions and Answers Section 5: One of the pillars of object oriented programming principles is Inheritance.
It facilitates the user with reusability of codes. It is illustrated in Chapter ten of the book. The declaration of class within a class is treated as inner class. It has many advantages in the context of Java. This is illustrated in Chapter eleven. To avoid the runtime anomalies during program execution, Java provides the mechanism of Exception handling.
This is elaborated in the Chapter twelve of the book. Java classes follow a certain hierarchy and are contained in a special container known as package. The knowledge of predefined packages and the procedure to create and manipulate the user-defined packages are elaborated in Chapter thirteen. To avoid space complexity in a case of major applications, Java provides the mechanism of creating Java Archive files. This is described in Chapter fourteen of the book.
Java provides major classes in order to handle the array of characters.
These two classes are String and StringBuffer. The mechanism of these classes is elaborated in Chapters fifteen and sixteen. In order to make Java a pure object oriented language, wrapper classes are present in Java. The knowledge of these classes is provided to students in Chapter seventeen. Java has certain shortcomings on issues like pointers and time of execution. Java facilitates the programmers to communicate with these conventional languages through the use of Java Native Interface.
This technology is described in Chapter eighteen. The concept of multithreading is present in Java to speed up the execution of a Java program and to manage different sub-process. This has been given in Chapter nineteen. Instead of templates, Java uses the technology of Generics to generalize the use of data types.
The procedure to develop and manipulate Generics is given in Chapter twenty. Out of the different predefined packages in Java, the IO package has a major role in handling files and streams. This technology is the first to provide a technique for permanent storage of data in case of Java.
The students can explore it in Chapter twenty-one. Chapter twenty-two describes the different classes present in the lang package of Java. Here, the students can understand the Runtime class, the Object class and the Cloneable interface. Rashmi Kanta Das. Read more Read less. Customers who viewed this item also viewed.