How to Learn Java?

General November 29, 2019
How to learn java

How to Learn Java?

Before learnings java, try to make yourself a little comfortable with starting level programming languages like C and C++. C++ will be greatly helpful, as it supports Object-Oriented Programming methodology that will be useful in Java, as its almost similar to it.

OOPS are basic building blocks for creating complex or heavy projects. It reduces the coding of heavy methods and increases code reusability.

Table of Content

About Java

Java was created in 1991 by Sun Microsystem. It was named Oak. Later its name was changed to Java after the name of “Java James Gosling”. Oracle is the current owner of Java. It is the most popular language and designed mainly for electronic products like mobile phones, security systems, and other electronic items. Software made in Java is still running in electronic items that are available in the market.

Basic Concepts

The first thing is to have the command over the basics, read the documentation of Java, many different blogs. Explore the best practices of coding.

For example coding indentation, how to write reusable codes, choosing editor is also important. In the starting phase don’t use editors that provide a suggestion on typing. Writing in basic editors like Notepad or Notepad++ helps you remember the coding syntax and inbuilt functions.

Explore all the platforms of Java, Java supports Web-based applications, mobile applications and also desktop-based applications. Basic Java is the same across all the platforms, libraries are different and way of implementation is different.

Click Here-> To Get Java Basic Program

Coding Environment

Setup your desktop or laptop with Java Virtual Machine. Setup the Java properly in Environment Variables properly so that you can easily compile and run java code in Command Prompt Terminal. Check on which version you working and whenever the next version comes, try to find out the difference between both the versions.

It might be possible the methods you are using might get depreciated in the new version. So working with deprecated versions will not impact but it’s not good

practice, and also remember whenever a method gets depreciated they also put is better concept into a newer version.


Start with the very basic programs, don’t jump for making methods or making complex programs. Before started programming practically creates its workflow in the notebook and do a dry run. Error debugging might be demotivating sometimes. Whenever you found some error try to note it down to your notebook and why it got generated and how did you solve it. So when the next time this error comes you should know how to solve it.

Few lines programs are good for starting. Always add a comment whenever you code anything. This will be helpful when you look at that code in the future or someone sees it. Start with basics like variables, casting of variables, loops, conditions. Once you are comfortable with them, you can start with loops, indexed array, associative arrays, and multidimensional arrays.

Always try to code in methods that will boost code reusability. Do experiments with methods like Overriding, overloading, argument passings. It will make the basics more strong.

You need to have a positive mindset, problem-solving thinking and learn by passion. Coding is always fun.

Once you are comfortable with basic programming, start the OOPs approach. Create code using classes and objects. Study about constructors, encapsulation, polymorphism, inheritance. Select any book of your favorite publication and start reading it line by line, and keep implement practical also. Practice it again and again. Create a log file that will record each and every step. Write a log for every try-catch blog.

Data Structure

Practice Java Structure algorithms more and more. Java Provides many in build methods that can do your job, but instead of using those methods, create your own using Data Structure algorithms. At one point while working on it you might think these algorithms won’t help you, but trust me they are going to improve your logic building and you will be able to think about how to write a good program in fewer lines.

Everyone can learn to code, but doing in the right way is important because a poor program with too many lines or unnecessary loops will impact on the performance of your software.

Data Structure Algorithms: Linear search, Bubble sorting, Merge sorting, Binary search, Hash table.


Spends more and more time on learning OOPS concepts of Java, in starting it might be confusing but OOPs is the base of the java. Learn about classes, objects. These are the four main concepts of OOPS that you need to master.

  • Abstraction
  • Encapsulation
  • Inheritance
  • Polymorphism

These concepts were designed to save the time of developers without concerning about the security. Never try to repeat the code that does the same job, create a class and object instead and use them again and again.

Always note your code flow on the paper, do a dry run. Do proper error handling of the code. If you think that piece of code can throw an error, surround the code with try block and return proper exceptions so that you can easily debug it later.

Java FrameWorks

Once you are comfortable with core java and have spent quite goods time on a few projects. Now you can switch to any of the Java Frameworks like Spring, Struts, Hibernate. These frameworks implement the MVC approach. MVC will play the key role you are working on big projects and you will be having a large number of files.

You can easily maintain directory structures, manage permissions, etc. These MVC frameworks have many inbuilt libraries and methods that reduce developer time in creating basic things like error page, error handling, error logging, user authentications, migrations, seeds for creating master data.

Integrating with Other Tech’s

If you have a goal or thought to work on other technology like NodeJS, ReactJS, or AngularJS with Java. Then in starting it might be challenging for you. So first get comfortable with Core Java then later you can start on it with other such technologies also.

Besant Technologies – Chennai & Bangalore Branch Locations

Besant Technologies - Velachery Branch

Plot No. 119, No.8, 11th Main road, Vijaya nagar,

Velachery, Chennai - 600 042

Tamil Nadu, India

Landmark - Reliance Digital Opposite Street

  +91-8099 770 770

Besant Technologies - Tambaram Branch

No.2A, 1st Floor, Duraisami Reddy Street,

West Tambaram, Chennai - 600 045

Tamil Nadu, India

Landmark - Near By Passport Seva

  +91-8099 770 770

Besant Technologies - OMR Branch

No. 5/318, 2nd Floor, Sri Sowdeswari Nagar,

OMR, Okkiyam Thoraipakkam, Chennai - 600 097

Tamil Nadu, India

Landmark - Behind Okkiyampet Bus Stop,

  +91-8099 770 770

Besant Technologies - Porur Branch

No. 180/84, 1st Floor, Karnataka Bank Building,

Trunk Road, Porur, Chennai - 600 116

Tamil Nadu, India

Landmark - Opposite to Gopalakrishna Theatre

  +91-8099 770 770

Besant Technologies - Anna Nagar Branch

Plot No:1371, 28th street kambar colony,

I Block, Anna Nagar, Chennai - 600 040

Tamil Nadu, India

Landmark - Behind Reliance Fresh

  +91-8099 770 770

Besant Technologies - T.Nagar Branch

Old No:146/2- New No: 48,

Habibullah Road,T.Nagar, Chennai - 600 017

Tamil Nadu, India

Landmark - Opposite to SGS Sabha

  +91-8099 770 770

Besant Technologies - Thiruvanmiyur Branch

22/67, 1st Floor, North mada street, Kamaraj Nagar

Thiruvanmiyur, Chennai 600041

Tamil Nadu, India

Landmark - Above Thiruvanmiyur ICICI Bank

  +91-8099 770 770

Besant Technologies - Siruseri Branch

No. 4/76, Ambedkar Street, OMR Road, Egatoor, Navallur,

Siruseri, Chennai 600130

Tamil Nadu, India

Landmark - Near Navallur Toll Gate, Next to Yamaha Showroom

  +91-8099 770 770

Besant Technologies - Maraimalai Nagar Branch

No.37, Ground Floor, Thiruvalluvar Salai,

Maraimalai Nagar,Chennai 603209

Tamil Nadu, India

Landmark - Near to Maraimalai Nagar Arch

  +91-8099 770 770

Besant Technologies - BTM Layout Branch

No 2, Ground floor, 29th Main Road,

Kuvempu Nagar,BTM Layout 2nd Coming from Silkboard,

AXA company signal, Stage, Bangalore - 560 076

Karnataka, India

Landmark - Next to OI Play School

  +91-8767 260 270

Besant Technologies - Marathahalli Branch

No. 43/2, 2nd Floor, VMR Arcade,

Varthur Main Road, Silver Springs Layout,

Munnekollal, Marathahalli, Bengaluru - 560037

Karnataka, India

Landmark - Near Kundalahalli Gate Signal

  +91-8767 260 270

Besant Technologies - Rajaji Nagar Branch

No. 309/43, JRS Ecstasy, First Floor,

59th Cross, 3rd Block, Bashyam Circle,

Rajaji Nagar, Bangalore - 560 010

Karnataka, India

Landmark - Near Bashyam Circle

  +91-8767 260 270

Besant Technologies - Jaya Nagar Branch

No. 2nd Floor,1575,11th Main Road,

4th T-Block, Pattabhirama Nagar,

Jaya Nagar, Bangalore - 560 041

Karnataka, India

Landmark - Opposite to Shanthi Nursing Home

  +91-8767 260 270

Besant Technologies - Kalyan Nagar Branch

No.513, 4th Cross Rd

2nd Block, HRBR Layout,

Kalyan Nagar, Bangalore - 560 043

Karnataka, India

Landmark - Opposite to kalayan nagar Axis Bank

  +91-8767 260 270

Besant Technologies - Electronic City Branch

No. 7, 3rd Floor, Ganga Enclave,

Neeladri Road, Karuna Nagar, Doddathoguru Village,

Electronics City Phase 1, Electronic City,

Bangalore - 560100, karnataka, India

Landmark - Adjacent to HDFC Bank and State Bank Of India

  +91-8767 260 270

Besant Technologies - Indira Nagar Branch

No.54, 1st Floor,

5th Main kodihalli,

Bengaluru, Karnataka 560008, India

Landmark - Behind Leela Palace Hotel,

  +91-8767 260 270

Besant Technologies - HSR Layout Branch

Plot No. 2799 & 2800, 27th Main,

1st Sector, HSR Layout,

Bengaluru, Karnataka 560102, India

  +91-8767 260 270

Besant Technologies - Hebbal Branch

No.29, 2nd Floor, SN Complex,

14th Main Road, E-Block Extention, Sahakara Nagar,

Bengaluru, Karnataka -560092, India

  +91-8767 260 270

Scroll Up