Practice Java by Building Projects

Ultimate Java interview prep course! 100% focused on applying object-oriented design in real-world applications
Rating: 4.4 out of 5 (7,988 ratings)
107,586 students
Practice Java by Building Projects
Rating: 4.4 out of 5 (7,988 ratings)
107,586 students
Build 5 complete, end-to-end Java applications from scratch
Implement core object-oriented programming techniques
Optimize applications with best practices and sharpen your programming skills
Master design principles and apply proper architecture to solve problems
Apply inheritance, interfaces, access modifiers, encapsulation, polymorphism
Use data structures and arrays to handle data sets and collection of objects
Develop your own utility class to read data and export results to a file
Analyze data from a file and apply conditional operations to make decisions
Design a real-world project with abstract classes and abstract methods
Use constructors, overloading, and overriding to enhance applications


  • Familiar with Java development environment
  • Knowledge of object-oriented programming concepts recommended
  • Consider enrolling in my "Become a Junior Java Software Developer" course

If your goal is to GET HIRED, then you need to PASS THE INTERVIEW!

As a trainer for over 6 years, one of the most common questions I get asked is "I'm new to programming, how can I get better and prepare for a job interview?My answer is "Practice, practice, practice!" I created this course to help people see the core Java concepts in action. This will help you understand the ideas and know how to apply them in an application. 

The BEST way to prepare for a technical interview is to get practice building applications and applying core principles of object-oriented design. I've designed this course to accomplish that objective.

Many people fail interviews because:

  • They don't grasp object-oriented programming concepts
  • They can't apply object-oriented design in an actual program
  • They haven't practiced developing their applications by hand
  • They haven't debugged their code and overcome challenges

This course is designed for someone who simply wants to get better at understanding and applying Java design and object-oriented programming. It is perhaps the most effective thing you can do to prepare for your job interview. Forget about flashcards, forget about quizzes. Start practicing!

In my Practical Java course, you will build realistic projects from scratch. We will approach each program analytically and outline our approach to implement the solution. Then, piece by piece we will write the code to create a fully functioning application.

  • Understand client scenarios and requirements
  • Approach each problem analytically
  • Write our solution outline
  • Implement code step-by-step
  • Apply core principals of object-oriented design

Everyone hoping to start out in Java needs to practice! It's not enough to learn and watch, but you must try yourself! So enroll in this course and get typing!

Note: this course was build for someone who has some working knowledge and familiarity of Java or application design. If you are new to Java, I recommend enrolling in my "Become a Junior Java Software Developer" course first.

Who this course is for:
  • Current students or recent graduates
  • Anyone looking to practice Java
  • Someone preparing for a Java interview
  • Someone starting a new Java project
  • Anyone wanting a refresher on object-oriented programming or application architecture
Course content
4 sections • 39 lectures • 3h 21m total length
  • The Ultimate Java Prep Guide
  • Survey of Course Projects
  • Course Pre-Requesites
  • Preparing the Java Environment
  • Overview of the Email Application
  • Creating the Outline for the Email Admin Class
  • Implementing the Constructor
  • Defining the Email Department
  • Generating a Random Password
  • Creating the Email Syntax
  • Implementing Class Set Methods
  • Implementing Class Get Methods
  • Using the Show Info Method
  • Overview of the Student Database Application
  • Creating the Outline for Student Class
  • Initializing the Student Constructor
  • Creating the Unique Student ID
  • Implementing the Enrollment Method
  • Implementing the Pay Tuition Method
  • Cleaning Up and Finishing Touches
  • Creating an Array of Objects
  • Overview of the Bank Application
  • Setting up the Project Architecture
  • Creating the Outline for All Bank Accounts and Interest Rate
  • Using Super Constructors with Inheritance
  • Listing Account Shared Properties
  • Initializing New Accounts with Constructors and Super Constructor
  • Generating the Account Number
  • Generating Account Number by Account Type
  • Implementing the ShowInfo Method
  • Implementing the Savings Account Safety Deposit Box
  • Implementing the Checking Account Debit Card
  • Setting up the Interest Rate Interface and Implementation
  • Implementing Account Shared Transactions
  • Implementing the Compound Interest Rate Method
  • Enhancing Application with Correct Access Specifiers
  • Writing a CSV Reader Utility
  • Determining Which New Account to Open
  • Creating a List of Objects

Dev / Train / Recuit
Tim Short
  • 4.4 Instructor Rating
  • 13,085 Reviews
  • 131,078 Students
  • 4 Courses

Over 10 years experience throughout the IT software development and business delivery services. This breadth of exposure and experience has allowed me to create a simple, clear, relevant course to prepare students for industry-relevant skills.

Software Developer - I have been a free-lance contractor for dozens of software and web applications since high school years.

Trainer - I have conducted corporate training and department transformation programs for top brands around the world, including Disney, Accenture, Fannie Mae, Freddie Mac, and Cox Enterprises.

Recruiting and Business Services - I have helped provide clients with training solutions and talent resources to meet requirements in their projects.


**Corporate Training Transformation Program**

Are you a corporate rep looking for a trainer to transform your software delivery? Bring automation testing with continuous integration / TDD / BDD to your QA team or software development scrum teams. I conduct regular online and onsite corporate training and transformation programs to develop automation test engineers to software delivery.