With the resources available online, you do not need to waste a lot of money on full-time offline courses. You can enrol in an online course from a reputed institute to learn Java and you can do according to your learning pace and cost-effective option. I recommend this Java Course by Intellipaat that covers the following topics:
- Core Java Concepts
- Writing Java Programs using Java Principles
- Language Conceptuals
- Operating with Java Statements
- Concept of Objects and Classes
- Introduction to Core Classes
- Inheritance in Java
- Exception Handling in Detail
- Getting started with Interfaces and Abstract Classes
- Overview of Nested Classes
- Getting started with Java Threads
- Overview of Java Collections
- Understanding JDBC
- Java Generics
- Input/Output in Java
- Getting started with Java Annotations
You can watch this video on Java Training to get started: