{"id":2634,"date":"2022-08-16T10:13:11","date_gmt":"2022-08-16T10:13:11","guid":{"rendered":"https:\/\/gyanipandit.com\/programming\/?page_id=2634"},"modified":"2023-03-22T11:18:24","modified_gmt":"2023-03-22T11:18:24","slug":"java","status":"publish","type":"page","link":"https:\/\/gyanipandit.com\/programming\/java\/","title":{"rendered":"Java Tutorial"},"content":{"rendered":"<p>Java is one of the most popular, and most widely used programming languages in this world. It has many applications in various areas, like Mobile Applications, Web Applications, Desktop Applications Development, Gaming, and much more. Java Programming Language was developed by James Gosling at Sun Microsystems, and now, it is owned by Oracle Corporation.<\/p>\n<p>In this detailed tutorial series, we will guide you to learn Java step by step. So, here is the list of concepts that you can navigate through.<\/p>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/introduction-of-java\/\">Introduction<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-jdk\/\">Brief about Java Development Kit (JDK)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-jre\/\">Brief about Java Runtime Environment (JRE)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-jvm\/\">Brief about Java Virtual Machine (JVM)<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/classloader-in-java\/\">Class loader<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-jvm-runtime-data-areas\/\">Runtime data areas<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/execution-engine-java\/\">Execution engine. <\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/features-of-java\/\">Features of Java<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-syntax\/\">Syntax of a Java Program<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/how-to-execute-a-java-program-without-using-an-ide\/\">How to execute a java program without using an IDE.<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-keywords\/\">Keywords in Java<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-comments\/\">Comments (single line and multi line comments)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-data-types\/\">Data-types<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-variables\/\">Variables<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/type-casting-in-java\/\">Type Casting (implicit and explicit)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-class-java\/\">Taking User input(using Scanner class)<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-scanner-nextint-method\/\">Taking integer input(nextInt method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-nextfloat-java\/\">Taking floating point number as input (nextFloat method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-next-method-java\/\">Get a complete token as input (next method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-nextline-java\/\">Read input till the end of line (nextLine method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-scanner-nextboolean-method\/\">Get boolean data as user input(nextBoolean method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-scanner-nextbyte-method\/\">Getting byte type data as user input (nextByte method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-scanner-nextshort-method\/\">Getting short type data as user input (nextShort method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-nextdouble-java\/\">Getting a double type data as user input (nextDouble method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextint-method-java\/\">Checking if the user input is int type (hasNextInt method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnext-java\/\">Check if there is token in its input (hasNext method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextbyte-method-java\/\">Checking if the user input is byte type(hasNextByte method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextboolean-method-java\/\">Checking if the user input is boolean type(hasNextBoolean method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextfloat-method-java\/\">Checking if the user input is float type(hasNextFloat method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextdouble-java\/\">Checking if the user input is double type(hasNextDouble method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextshort-java\/\">Checking if the user input is short type(hasNextShort method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-hasnextlong-java\/\">Checking if the user input is long type(hasNextLong method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/scanner-nextlong-java\/\">Getting the long type data as user input(nextLong method)<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/operators-in-java\/\">Understanding Operators<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/arithmetic-operators-in-java\/\">Arithmetic Operators<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/assignment-operators-java\/\">Assignment Operators<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/relational-operators-in-java\/\">Relational operators<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/logical-operators-in-java\/\">Logical Operators<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/bitwise-operators-in-java\/\">Bitwise operators<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/decision-making-java\/\">Decision Making in Java<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/if-else-statement-in-java\/\">if else statements<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/if-else-ladder-in-java\/\">if else ladder(if\u2026 else\u2026 if statements)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/nested-if-else-in-java\/\">Nesting of if else statements<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/ternary-operator-in-java\/\">Ternary Operator<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/switch-statement-in-java\/\">switch statements<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/looping-in-java\/\">Looping<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/for-loop-in-java\/\">for loop<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/while-loop-in-java\/\">while loop<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/do-while-loop-java\/\">do&#8230; while loop<\/a><\/li>\n<\/ul>\n<\/li>\n<li>break and continue keywords\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/break-statement-in-java\/\">break keyword<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/continue-statement-in-java\/\">continue keyword<\/a><\/li>\n<\/ul>\n<\/li>\n<li>String in Java\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/string-in-java\/\">Creating a string<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/escape-sequences-in-java\/\">some escape sequences<\/a><\/li>\n<li>Multiline string in Java.<\/li>\n<li>Understanding and exploring strings (How and where are string objects created)<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/why-string-is-immutable-in-java\/\">Why are Strings immutable?<\/a><\/li>\n<li>Some more ways to create string objects (using different String constructors)<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/string-concatenation-java\/\">string concatenation<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/string-methods-java\/\">String methods<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-length\/\">Calculating length of a String(length method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-tolowercase\/\">Getting the string into Lowercase (toLowerCase method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-touppercase\/\">Getting the string into UpperCase(toUpperCase method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-charat\/\">Getting character at given index (charAt method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-concat\/\">Concatenating strings (concat method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-equals\/\">Checking if the string contents are equal (equals method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-equalsignorecase\/\">Checking if string contents are equal(ignoring case)(equalsIgnoreCase method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/python-string-endswith\/\">checking if string ends with specified string(endsWith method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-isempty\/\">Checking if the string is empty (isEmpty method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-indexof\/\">getting index(first occurrence) of some string in the specified string (indexOf method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-lastindexof\/\">getting index(last occurrence) of some string in the specified string (lastIndexOf method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-replace\/\">replacing some character with some another character in the string (replace method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-replaceall\/\">replacing some string with another string in the given string (replaceAll method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-startswith\/\">Checking if some string starts with given string (startsWith method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-trim\/\">removing the spaces from beginning and end from the string (trim method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-strip\/\">removing the whitespaces from beginning and end from the string (strip method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-stripleading\/\">removing the leading(from the beginning) whitespaces (stripLeading method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-striptrailing\/\">removing the trailing(from the end) whitespaces (stripTrailing method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-contains\/\">checking if the string contains the given character sequence(contains method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-split\/\">splitting the string over certain regular expression (split method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-string-substring\/\">getting a substring from the given string(substring method)(overloaded method)<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/stringbuilder-class-in-java\/\">StringBuilder Class<\/a>\n<ul>\n<li>how to create StringBuilder object<\/li>\n<li>Some constructors<\/li>\n<li>StringBuilder methods\n<ul>\n<li>Calculating the length of character sequence (length method)<\/li>\n<li>inserting some String in the end of the content (append method)<\/li>\n<li>deleting some character at the given index from the content(deleteCharAt method)<\/li>\n<li>inserting some string into the character sequence (insert method)<\/li>\n<li>getting index(first occurrence) of some string in the character sequence(indexOf method)<\/li>\n<li>getting index(last occurrence) of some string in the character sequence (lastIndexOf method)<\/li>\n<li>revsersing the character sequence (revserse method)<\/li>\n<li>setting some character at the specified index(setCharAt method)<\/li>\n<li>getting the capacity from the StringBuilder. (capacity method)<\/li>\n<li>Replacing some character sequence from another character sequence<\/li>\n<li>from start index to given end index(replace method)<\/li>\n<li>Bringing the buffer size to required (trimToSize method)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/arrays-in-java\/\">Arrays in Java<\/a>\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/how-to-declare-an-array-in-java\/\">How to declare an array<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/accessing-array-elements\/\">Accessing the array elements<\/a><\/li>\n<li>arrays are mutable<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/enhanced-for-loop-java\/\">the enhanced for loop<\/a><\/li>\n<li>Different ways to create array<\/li>\n<li>Methods from the Arrays class\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/arrays-tostring-java\/\">Printing the string representation of the array (toString method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/array-sort-java\/\">Sorting the array(sort method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/comparing-arrays-in-java-equals-method\/\">comparing the arrays(equals method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/arrays-binarysearch-java\/\">searching into the arrays (binarySearch method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-arrays-fill\/\">filling some data into the array (fill method)<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/multidimensional-arrays-java\/\">Multi-dimensional arrays<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math\/\">The Math class<\/a>\n<ul>\n<li>fields from the Math class<\/li>\n<li>Methods from the Math class\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-abs\/\">finding the absolute value of some given number(abs method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-cbrt\/\">finding the cube root of some given number (cbrt method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-ceil\/\">finding the ceil value(rounded up value) for some given number(ceil method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-floor\/\">finding the floor value(rounded down value) for some given number(floor method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-max\/\">getting the maximum of two given numbers(max method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-min\/\">getting the minimum of two given numbers(min method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-pow\/\">calculating power of some number(pow method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-random\/\">generating random number(random method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-round\/\">rounding the given number to nearest integer(round method)<\/a><\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-math-sqrt\/\">calculating the square root of some number(sqrt method)<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Methods in Java\n<ul>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/java-methods\/\">How can we create our own methods<\/a><\/li>\n<li>Types of methods, on the basis of return type and arguments\n<ul>\n<li>Method that takes no arguments, and returns nothing<\/li>\n<li>Method that takes arguments, and returns nothing<\/li>\n<li>Method that takes arguments, and returns something<\/li>\n<li>Method that takes no arguments, and returns something<\/li>\n<\/ul>\n<\/li>\n<li>passing variable number of arguments to the method<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/method-overloading-in-java\/\">Method overloading<\/a><\/li>\n<li>Generating random (PseudoRandom) numbers<\/li>\n<li><a href=\"https:\/\/gyanipandit.com\/programming\/exception-handling-in-java\/\">Exception Handling in Java<\/a>\n<ul>\n<li>Runtime Stack<\/li>\n<li>Checked and Unchecked Exceptions\n<ul>\n<li>Using the try, catch and finally blocks for exception handling<\/li>\n<\/ul>\n<\/li>\n<li>try with multiple catch blocks<\/li>\n<li>printing the exception information\n<ul>\n<li>printStackTrace method<\/li>\n<li>toString method<\/li>\n<li>getMessage method<\/li>\n<\/ul>\n<\/li>\n<li>nested try-catch<\/li>\n<li>The throw keyword<\/li>\n<li>The throws keyword<\/li>\n<li>try with resources<\/li>\n<li>Throwing custom exception(user defined exceptions)<\/li>\n<\/ul>\n<\/li>\n<li>File Handling in Java\n<ul>\n<li>Creating a File object (Constructors)<\/li>\n<li>Some methods from the File class\n<ul>\n<li>creating new file (createNewFile method)<\/li>\n<li>getting name of the file (getName method)<\/li>\n<li>getting the length of the file in bytes(length method)<\/li>\n<li>checking if such file exists or not(exists method)<\/li>\n<li>checking if we can read from the file(canRead method)<\/li>\n<li>checking if we can write to the file(canWrite method)<\/li>\n<li>getting the absolute path of the file(getAbsolutePath method)<\/li>\n<li>getting array of all the files in some directory (list method)<\/li>\n<li>deleting some file(delete method)<\/li>\n<li>creating some directory at the specified location(mkdir method)<\/li>\n<li>checking if we can execute the file(canExecute method)<\/li>\n<li>checking whether the given file object is a normal file or not (isFile method)<\/li>\n<li>checking whether the given file object is a directory(isDirectory method)<\/li>\n<\/ul>\n<\/li>\n<li>Writing data to the file using FileWriter class\n<ul>\n<li>Some Constructor from the FileWriter class<\/li>\n<li>Writing some data to the file, using the write method<\/li>\n<li>Appending some data to the file using write method(and some constructor)<\/li>\n<li>the flush method<\/li>\n<li>the close method<\/li>\n<\/ul>\n<\/li>\n<li>Reading data from the file using FileReader\n<ul>\n<li>constructors from the FileReader class<\/li>\n<li>the read method, to read data from the file.<\/li>\n<\/ul>\n<\/li>\n<li>Writing data to the file using BufferedWriter class\n<ul>\n<li>Creating BufferedWriter object<\/li>\n<li>Using some different methods from the BufferedWriter<\/li>\n<\/ul>\n<\/li>\n<li>Reading data from the file using BufferedReader\n<ul>\n<li>Creating BufferedReader object<\/li>\n<li>Reading data one character at a time<\/li>\n<li>Reading data line by line.<\/li>\n<\/ul>\n<\/li>\n<li>Writing to the file, using PrintWriter\n<ul>\n<li>Creating a PrintWriter<\/li>\n<li>Writing data to the file(character, character array, and string)<\/li>\n<li>Using the methods like print, println methods, to write data of other datatypes<\/li>\n<\/ul>\n<\/li>\n<li>Reading data from the file using Scanner<\/li>\n<\/ul>\n<\/li>\n<li>Object Oriented Programming (OOP)\n<ul>\n<li>What is Object Oriented Programming?<\/li>\n<li>Classes and objects<\/li>\n<li>Constructors\n<ul>\n<li>Some rules for creating Constructors<\/li>\n<li>Types of constructors\n<ul>\n<li>non parameterized constructor and parameterized constructor<\/li>\n<\/ul>\n<\/li>\n<li>Constructor overloading<\/li>\n<li>chaining of constructors(using this keyword)<\/li>\n<\/ul>\n<\/li>\n<li>The static keyword\n<ul>\n<li>Using static keyword with variable<\/li>\n<li>Declaring methods as static<\/li>\n<li>static block<\/li>\n<li>the static nested classes<\/li>\n<\/ul>\n<\/li>\n<li>types of variables\n<ul>\n<li>The instance variables<\/li>\n<li>The Local variables<\/li>\n<li>The static variables<\/li>\n<\/ul>\n<\/li>\n<li>Access modifiers\n<ul>\n<li>Using some access modifiers with the class<\/li>\n<li>Using some access modifiers with the variables<\/li>\n<li>Using some access modifiers with the methods<\/li>\n<li>The protected access modifier<\/li>\n<li>The default(package-private) access modifier<\/li>\n<li>The private access modifier<\/li>\n<li>The public access modifier.<\/li>\n<\/ul>\n<\/li>\n<li>Singleton Class<\/li>\n<li>Principles of Object Oriented Programming &#8211;\n<ul>\n<li>Inheritance\n<ul>\n<li>Introduction to inheritance<\/li>\n<li>Types of inheritance\n<ul>\n<li>Single inheritance<\/li>\n<li>Multilevel Inheritance<\/li>\n<li>heirarchical inheritance<\/li>\n<li>Multiple inheritances<\/li>\n<li>Hybrid Inheritance<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Polymorphism\n<ul>\n<li>Static Polymorphism<\/li>\n<li>Runtime polymorphism(Dynamic method dispatch)<\/li>\n<\/ul>\n<\/li>\n<li>Encapsulation<\/li>\n<li>Abstraction<\/li>\n<li>Method hiding<\/li>\n<\/ul>\n<\/li>\n<li>Understanding the &#8216;this&#8217; keyword\n<ul>\n<li>referring to the current object variable using this keyword<\/li>\n<li>call to this from a constructor for calling another matching constructor in the same class<\/li>\n<li>using this to return the current object<\/li>\n<li>passing this as an argument for the method<\/li>\n<li>invoking some method using this<\/li>\n<li>passing this as an argument to the constructor<\/li>\n<\/ul>\n<\/li>\n<li>The abstract class and the &#8216;abstract&#8217; keyword<\/li>\n<li>Understanding interfaces\n<ul>\n<li>Creating an interface<\/li>\n<li>Implementing the created interface<\/li>\n<li>default, static, and private methods in the interface<\/li>\n<li>Creating a reference variable of the reference type, for the object<\/li>\n<li>an interface can extend another interface<\/li>\n<li>Achieving multiple inheritances using interface<\/li>\n<\/ul>\n<\/li>\n<li>Wrapper class<\/li>\n<li>The &#8216;super&#8217; keyword\n<ul>\n<li>Using the &#8216;super&#8217; keyword to access the parentclass variable<\/li>\n<li>Using the &#8216;super&#8217; keyword to call the parentclass method<\/li>\n<li>Using the &#8216;super&#8217; keyword to call the matching superclass constructor from the child constructor<\/li>\n<\/ul>\n<\/li>\n<li>The &#8216;final&#8217; keyword\n<ul>\n<li>Declaring variable as &#8216;final&#8217;<\/li>\n<li>Declaring method as &#8216;final&#8217;<\/li>\n<li>Declaring some class as &#8216;final&#8217;<\/li>\n<\/ul>\n<\/li>\n<li>Multithreading in Java\n<ul>\n<li>Idea behing multithreading<\/li>\n<li>States of a thread<\/li>\n<li>Achieving multithreading using the Thread class(extending the Thread class)\n<ul>\n<li>Methods from the Thread class\n<ul>\n<li>getting the current thread(currentThread method)<\/li>\n<li>getting the ID of the corresponding thread(getId method)<\/li>\n<li>getting the name of the corresponding thread(getName method)<\/li>\n<li>getting the priority of the corresponding thread(getPriority method)<\/li>\n<li>setting priority of some thread(setPriority method)<\/li>\n<li>suspending the current thread execution for some specific period of time(sleep method)<\/li>\n<li>making one thread wait until another method finishes execution(join method)<\/li>\n<li>getting the state of the thread(getState method)<\/li>\n<li>setting the name of the corresponding thread (setName method)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Achieving multithreading using the Runnable interface(implementing the Runnable interface)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Java is one of the most popular, and most widely used programming languages in this world. It has many applications in various areas, like Mobile Applications, Web Applications, Desktop Applications Development, Gaming, and much more. Java Programming Language was developed by James Gosling at Sun Microsystems, and now, it is owned by Oracle Corporation. In &#8230; <a title=\"Java Tutorial\" class=\"read-more\" href=\"https:\/\/gyanipandit.com\/programming\/java\/\" aria-label=\"Read more about Java Tutorial\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"templates\/tutorial-index.php","meta":{"footnotes":""},"class_list":["post-2634","page","type-page","status-publish"],"_links":{"self":[{"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/pages\/2634","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/comments?post=2634"}],"version-history":[{"count":20,"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/pages\/2634\/revisions"}],"predecessor-version":[{"id":5318,"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/pages\/2634\/revisions\/5318"}],"wp:attachment":[{"href":"https:\/\/gyanipandit.com\/programming\/wp-json\/wp\/v2\/media?parent=2634"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}