CodeGym
Promotion
CodeGym University
Learning
Course
Tasks
Surveys & Quizzes
Games
Help
Schedule
Community
Users
Forum
Chat
Articles
Success stories
Activity
Reviews
Subscriptions
Light theme

Lessons

  • Reviews
  • About us
Start
Start learning
Start learning now
  • Quest map
  • Lessons
All quests Java Syntax Java Core Java Multithreading Java Collections JSP & Servlets Module 3. Java Professional Module 4. SQL & Hibernate Module 5. Spring Spring
All levels Level 0 Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7 Level 8 Level 9 Level 10 Level 11 Level 12 Level 13 Level 14 Level 15 Level 16 Level 17 Level 18 Level 19 Level 20 Level 21 Level 22 Level 23 Level 24 Level 25 Level 26 Level 27 Level 28
  • You've reached Level 11!

    Java Core
    Level 1, Lesson 0
    Congratulations, this marks the beginning of the second quest! You will learn the basics of OOP, streams, and serialization. You'll learn about method overloading, interfaces and multiple inheritance. Regular practice (by completing tasks) will help you pass all 10 levels in this quest and you'll soon be ready to complete mini-projects.
    Available
  • OOP: basic principles

    Java Core
    Level 1, Lesson 1
    You've already heard about classes and objects. Now it's time to take a look at them from a different angle. Abstraction, encapsulation, inheritance, and polymorphism — perhaps these words currently don't mean anything to you (or perhaps their meaning is unrelated to programming). But before long you'll learn that OOP rests on these four pillars.
    Available
  • Why do we need OOP?

    Java Core
    Level 1, Lesson 2
    "OOP is cumbersome and clumsy! Is there no way around it?" is a common question often asked by CodeGym students at this stage. In this lesson, you'll hear a story about a company that ships goods to outer space. "And what does that have to do with OOP?" you ask. The fact that this approach helps the company cope with some challenges. It will help you, too.
    Available
  • Yet another explanation of OOP (loose coupling, tight cohesion)

    Java Core
    Level 1, Lesson 3
    The product's internal structure must be maintained in a way that will allow major (and minor) changes to be made with minimum reworking. Object-oriented programming lets companies work on huge projects without floundering when the code needs to be revised.
    Available
  • Lesson on OOP wikis

    Java Core
    Level 1, Lesson 4
    The last two lessons have prepared you to dive deeper into the essence of OOP. Professor Noodles isn't wasting any time. He's found one of the best articles on OOP for you. It's super interesting, but rather long and highly detailed. If something in it seems difficult, don't worry about it for now.
    Available
  • Inheritance. Advantages of inheritance

    Java Core
    Level 1, Lesson 5
    Once upon a time there was horse. It nibbled the grass, galloped around, and lived in peace. Then a programmer came along, and suddenly the horse had a descendent — Pegasus, a winged horse. This new beast inspired others to take on multiple jobs. It was like a horse: it knew how to nibble grass and gallop. But it also knew how to fly. This is how subclasses appeared in Java. The details are in the lesson.
    Available
  • Inheritance exercises

    Java Core
    Level 1, Lesson 6
    Wanna build an off-road vehicle from old VW Beetles? Slap some wings on a horse? Bolt an umbrella onto a fish? No problem! Java, OOP, and inheritance are at your disposal. We'll tackle some "inheritance" tasks without forgetting common sense.
    Available
  • Encapsulation

    Java Core
    Level 1, Lesson 7
    Valid internal state, argument checking, fewer bugs when changing code inside classes, the ability to define how objects interact with other objects... What are we talking about? These are the main advantages of encapsulation, one of the four pillars of OOP. Rishi Gatesman will tell you all about it.
    Available
  • Encapsulation exercises

    Java Core
    Level 1, Lesson 8
    It's time for some practice. This time you need to complete a handful of tasks about OOP and encapsulation. You'll need to work on instances variables and methods that can change objects' internal state.
    Available
  • Useful links from the Professor — 11

    Java Core
    Level 1, Lesson 9
    You've probably already guessed that Professor Hans Noodles doesn't give bad advice! This time he's found a link to an excellent lesson about inheritance and encapsulation. It will help you add some structure to your knowledge, if you want to.
    Available
  • Elon Musk

    Java Core
    Level 1, Lesson 10
    Resting is useful! And resting in a useful way is even more useful. It's time to relax a bit, watch a cool video... and get a bunch of dark matter for it! Videos about technology and famous nerds are an excellent substitute for TV shows. This time we suggest that you watch a documentary about Elon Musk.
    Available
  • Homework and bonus exercises

    Java Core
    Level 1, Lesson 11
    Another small peak can be seen on the horizon: the end of the second quest is getting close! All you need to do is solidify your new knowledge about inheritance and encapsulation, and then expand what you know by completing some bonus tasks.
    Available
Learn
  • Registration
  • Java Course
  • Help with Tasks
  • Pricing
  • Game Projects
  • Java Syntax
Community
  • Users
  • Articles
  • Forum
  • Chat
  • Success Stories
  • Activity
  • Affiliate Program
Company
  • About us
  • Contacts
  • Reviews
  • Press Room
  • CodeGym for EDU
  • FAQ
  • Support
CodeGym CodeGym is an online course for learning Java programming from scratch. This course is a perfect way to master Java for beginners. It contains 1200+ tasks with instant verification and an essential scope of Java fundamentals theory. To help you succeed in education, we’ve implemented a set of motivational features: quizzes, coding projects, content about efficient learning and Java developer’s career.
Follow us
Interface language
Programmers Are Made, Not Born © 2023 CodeGym
MastercardVisa
Programmers Are Made, Not Born © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.