Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Essenciais de Java | Codefinity
dsa banner mobiledsa banner

Incerto onde
começar?

Track
Certificado

Essenciais de Java

4.3+
9 avaliações
Beginner
Embarque em uma jornada abrangente pelo universo da programação Java. Seja você um iniciante ou alguém com alguma experiência em codificação, este curso irá fornecer-lhe o conhecimento e as habilidades necessárias para se destacar como desenvolvedor Java. Mostre mais
java
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams
What you will learn
  • Grasp the core concepts of Java to build your first applications from scratch
  • Develop robust and scalable applications using Object-Oriented Programming principles in Java
  • Implement and manipulate data structures to efficiently store and retrieve data in your Java programs
  • Write and optimize Java code with a strong understanding of various data structures
  • Master the basics of unit testing in Java using JUnit to ensure your code is reliable and bug-free
  • Build a solid foundation in Java, preparing you for more advanced programming challenges
  • chapters
    171 chapters
  • hours
    22 hours
  • tasks
    307 tasks
Trusted by employees of leading companies
GoogleIntelTwitterFedExMetaNikeAmazonMicrosoftTesla
Learning track content
Module 1 / Noções Básicas de Java
Nesta seção, você se familiarizará com o Java, entenderá suas particularidades e por que eu recomendaria aprender essa linguagem de programação específica. Você escreverá seu primeiro código em Java e se familiarizará com a impressão de texto no console. Vamos começar?
Concluímos um curso teórico, e agora a parte mais interessante começa. Nesta seção, vamos nos familiarizar com os conceitos básicos de codificação, tipos de dados primitivos e operações com eles. Agora, seu código pode executar tarefas matemáticas e avaliar condições para a execução subsequente. Parece interessante? Vamos começar a nos familiarizar.
Nesta seção, vamos nos familiarizar com vários tipos de loops, como for, while e do-while. Loops são fundamentais em qualquer linguagem de programação, pois nos permitem iterar de maneira eficiente sobre uma grande quantidade de dados e economizar tempo significativamente. Mais adiante, você usará loops extensivamente em tarefas como ordenação, trabalhar com arrays, coleções e muito mais. Bem, então, vamos começar.
Esta seção abordará arrays e como usá-los corretamente. Vamos aprender a agrupar dados em arrays e explorar alguns métodos para trabalhar com eles. Arrays são essenciais para a linguagem de programação Java, então vamos mergulhar no assunto.
Nesta seção, você será introduzido a um tipo de dado chamado String. Por que existe uma seção separada no curso para este tipo de dado? String é um tipo de dado bastante significativo, com muitos métodos e operações embutidos. Neste curso, você vai aprender sobre String e StringBuilder, explorar seus métodos básicos e aprender como usar strings de maneira eficaz em Java. Então, está pronto para começar?
Module 2 / Java Extended
Throughout the following lessons, you will become acquainted with the inner workings of Java and discover optimized methods to work with the language. This will involve exploring Java's operations at the computer level and adopting best practices for utilizing familiar concepts efficiently.
You have already encountered methods, and now you will finally understand what they actually are, how to create your own methods, and how to work with them. You will learn to return the desired values from methods and significantly improve the quality and logic of your code.
Get ready to dive into the world of String and discover more about its inner workings and methods. We'll explore the fascinating features that String offers, including the ability to customize the "toString" method, split strings into substrings, and utilize indexes for efficient data retrieval. Let's embark on this exciting journey to expand our knowledge of String manipulation!
In this section, you will learn how to create your own classes and their objects. You will be able to use methods of one class within another and establish relationships between them. Get ready to discover many interesting concepts and delve deeper into OOP programming!
In this section, we will continue our study of classes. We will explore more advanced usage of class objects and learn more about access modifiers and how to use them effectively. We will also delve into getters and setters, as they are considered best practices in programming.
Finally, we can start learning Object-Oriented Programming (OOP) in Java. It will be challenging, but I'm confident that you'll succeed! In this section, we'll cover all the principles of OOP, explain why OOP is important. You'll learn how to inherit classes, overload and override methods, encapsulate data from other classes, and work with abstraction. Moreover, you'll reinforce all these theoretical concepts with practical exercises, working on assignments in your IDE. You'll gain a wealth of knowledge, both practical and theoretical, so let's get started!
In the previous section, we concluded that all Object-Oriented Programming is mainly built on abstraction. However, an abstract class has one significant limitation – you can inherit from only one abstract class. But what if we need more? Interfaces come to the rescue. In this section, you will learn what an interface is, why it's necessary, how to use it correctly, and you will continue practicing Object-Oriented Programming. Let's turn you into a professional!
Module 4 / Java Data Structures
In this section, you will be introduced to the concept of a list and the most commonly used types of lists. You will learn how to create them and use various lists correctly.
This section will introduce you to data structures that are not used as frequently but are still valuable. Data structures like set, stack, queue, and deque will help you better understand how Java works and various applications with databases. There will also be plenty of practice to reinforce both new and previous material.
This section will introduce you to a data structure called a map. This data structure operates on the principle of key-value pairs, meaning we retrieve data based on a specific key. This allows us to build various data structures that closely resemble databases. You will also learn about concepts such as HashCode and explore data structures like HashMap and HashSet.
The final touches on mastering the basic data structures. In this section, we will talk about another data structure - enum, and also explore how to work with the flow of information in the data structure using the Stream API.
Module 5 / Java JUnit Library. Types of Testing
Let's talk about types of testing and which testing methods developers use. You will learn about the stages an application goes through before being delivered to the client and the specific tests you will need to write.
In this section, we're going to dive into unit testing — you'll get the rundown on its structure in Java and the ins and outs of crafting them the right way. Setting up your IDE, importing necessary libraries, and lots of hands-on practice.
In this section, we will enhance our coding skills by dealing with errors that can also be caught in unit tests. When testing an application, you may come across various errors, and sometimes they should be turned into exceptions. I will explain how to catch exceptions in your code, test them, and handle them properly.
Module 6 / Multithreading in Java
This section will delve into the foundational concepts of multithreading in Java, focusing on the creation and management of threads, and the use of synchronization techniques to avoid conflicts. You’ll also learn how to utilize essential keywords and methods to ensure the accurate and reliable execution of multithreaded programs, providing a solid understanding of how to handle concurrency effectively in your applications.
This section explores synchronized collections in Java, explaining their purpose and the common concurrency issues they are designed to solve. You’ll gain insights into how these collections work, why they are essential in multithreaded environments, and how they help ensure safe and consistent data manipulation when multiple threads access shared resources.
This section covers high-level synchronization mechanisms in Java, such as the use of Lock and Condition, semaphores, barriers, atomic variables, and thread pooling with Executors. Each topic is paired with practical exercises designed to reinforce your understanding and help you apply the theoretical knowledge to real-world scenarios.
This section explores fundamental multithreaded programming patterns and practices such as Producer-Consumer, Fork/Join, ThreadLocal, and asynchronous programming with CompletableFuture. You'll work through examples and see the practical outcomes of these approaches, gaining hands-on experience that will enable you to apply these techniques effectively in real-world applications.
Requirements
  1. A computer with a browser - all browsers are supported.
  2. Your enthusiasm to enhance your tech skills.
  3. Everything else needed to start learning and practicing is already included in this course.
Over 200,000 5-star ratings and counting
Ruslan Kravchuk
The main thing is to learn and not give up
The material is good, there is a lot to learn, all in order to become better and the main thing is to learn what you want....
Matteo Comune
Thanks to them I'm learning a lot…
Thanks to them I'm learning a lot faster because they help you to understand everything from scratch. It's the best website that helps people with no background in IT...
Yuliana Cadavid
great course for beginners
great course for beginners, they test your knowledge in every lesson...
Elpunzon
I am enjoying my Codefinity experience…
I am enjoying my Codefinity experience learning Python. The self-paced way of learning is great because I can fit it into my schedule...
Alexandru Alexandru
Is nice to learn from codefinity
Is nice to learn from codefinity. Its easy and have good examples on what I learned here...
jacob Templet
Easy to follow along with and provides…
Easy to follow along with and provides challenge in my every day life. The challenge keeps me wanting to learn day after day...
Elan
Codefinity is a comprehensive learning…
Codefinity is a comprehensive learning tool to help you develop your skills as a software engineer or data scientist. The exercises are fun and a good way to sharpen your skills...
Thibault
First time learning how to code
First time learning how to code and successfully doing so with codefinity - thank you...
Adrien Morel
Well designed for total beginners
Well designed for total beginners, incremental progress and makes me feel confident....
_Gracy
it's simply perfectly well explained
it's simply perfectly well explained! so far I have not experienced any difficulty because everything is so well managed...
Ruslan Kravchuk
The main thing is to learn and not give up
The material is good, there is a lot to learn, all in order to become better and the main thing is to learn what you want....
Matteo Comune
Thanks to them I'm learning a lot…
Thanks to them I'm learning a lot faster because they help you to understand everything from scratch. It's the best website that helps people with no background in IT...
Yuliana Cadavid
great course for beginners
great course for beginners, they test your knowledge in every lesson...
Elpunzon
I am enjoying my Codefinity experience…
I am enjoying my Codefinity experience learning Python. The self-paced way of learning is great because I can fit it into my schedule...
Alexandru Alexandru
Is nice to learn from codefinity
Is nice to learn from codefinity. Its easy and have good examples on what I learned here...
jacob Templet
Easy to follow along with and provides…
Easy to follow along with and provides challenge in my every day life. The challenge keeps me wanting to learn day after day...
Elan
Codefinity is a comprehensive learning…
Codefinity is a comprehensive learning tool to help you develop your skills as a software engineer or data scientist. The exercises are fun and a good way to sharpen your skills...
Thibault
First time learning how to code
First time learning how to code and successfully doing so with codefinity - thank you...
Adrien Morel
Well designed for total beginners
Well designed for total beginners, incremental progress and makes me feel confident....
_Gracy
it's simply perfectly well explained
it's simply perfectly well explained! so far I have not experienced any difficulty because everything is so well managed...
Certificate of Completion
Data Engineer
Certificado de Conclusão
Mostre suas habilidades recém-adquiridas. Você merece
Discover more
Learning tracks
trilha
lockSomente para Ultimate
track image

TEST TRACK 12

laptop1 Curso
pencil-with-line1 Projeto
list0 Task
Iniciante
4.0
(3724)
trilha
lockSomente para Ultimate
track image

Desenvolvimento Web Full Stack

laptop7 Cursos
list328 Tarefas
Iniciante
4.6
(56)
trilha
lockSomente para Ultimate
track image

Torne-se um Desenvolvedor React

laptop5 Cursos
list119 Tarefas
Intermediário
4.8
(5)
trilha
lockSomente para Ultimate
track image

Análise e Visualização de Dados em Python

laptop5 Cursos
list135 Tarefas
Iniciante
4.6
(9)
trilha
lockSomente para Ultimate
track image

SQL do Zero ao Herói

laptop4 Cursos
list112 Tarefas
Iniciante
4.7
(87)
trilha
lockSomente para Ultimate
track image

C++ para Iniciantes

laptop6 Cursos
list94 Tarefas
Iniciante
4.4
(17)
trilha
lockSomente para Ultimate
track image

Python de Zero a Herói

laptop6 Cursos
list170 Tarefas
Iniciante
4.7
(291)
trilha
lockSomente para Ultimate
track image

Fundamentos de Aprendizado de Máquina

laptop4 Cursos
pencil-with-line1 Projeto
list87 Tarefas
Avançado
4.8
(4)
trilha
lockSomente para Ultimate
track image

Python: Além do Intermediário

laptop3 Cursos
pencil-with-line1 Projeto
list93 Tarefas
Iniciante
4.7
(257)
trilha
lockSomente para Ultimate
track image

Game Development with Unity

laptop3 Cursos
list123 Tarefas
Iniciante
4.6
(7)
trilha
lockSomente para Ultimate
track image

Torne-se um Desenvolvedor Django

laptop5 Cursos
list170 Tarefas
Avançado
4.4
(27)
trilha
lockSomente para Ultimate
track image

Flask para Leigos

laptop5 Cursos
list156 Tarefas
Intermediário
4.5
(31)
trilha
lockSomente para Ultimate
track image

Fundação de Desenvolvimento Frontend

laptop6 Cursos
list289 Tarefas
Intermediário
4.6
(52)
trilha
lockSomente para Ultimate
track image

Web Developer from Zero to Hero

laptop6 Cursos
list228 Tarefas
Iniciante
4.6
(56)
trilha
lockSomente para Ultimate
track image

Preparation for Data Science

laptop8 Cursos
pencil-with-line2 Projetos
list177 Tarefas
Intermediário
4.5
(11)
trilha
lockSomente para Ultimate
track image

Deep Learning Odyssey

laptop2 Cursos
list80 Tarefas
Avançado
5.0
(3)
trilha
lockSomente para Ultimate
track image

Web Development with C#

laptop7 Cursos
list283 Tarefas
Iniciante
4.8
(95)
trilha
lockSomente para Ultimate
track image

TEST E2E TRACK BEGINNER

pencil-with-line1 Projeto
list0 Task
Iniciante
trilha
lockSomente para Ultimate

PT Track

laptop2 Cursos
list21 Tarefas
Begginer
4.7
(3)
trilha
lockSomente para Ultimate
track image

Skilled Python BackEnd Developer

laptop5 Cursos
list107 Tarefas
Avançado
4.7
(258)
trilha
lockSomente para Ultimate
track image

Web & Cloud Fundamentals

laptop4 Cursos
list126 Tarefas
Iniciante
4.5
(43)
trilha
lockSomente para Ultimate
track image

Test Recalculate

laptop2 Cursos
list0 Task
Iniciante
trilha
lockSomente para Ultimate
track image

Excel from Zero to Hero

laptop4 Cursos
list53 Tarefas
Iniciante
4.5
(33)
trilha
lockSomente para Ultimate
track image

Data Analyst Foundation

laptop4 Cursos
list97 Tarefas
Iniciante
4.7
(108)
trilha
lockSomente para Ultimate
track image

Full-Stack .NET Developer Journey

laptop13 Cursos
list535 Tarefas
Intermediário
4.8
(126)
trilha
lockSomente para Ultimate
track image

Full-Stack .NET Developer Journey

laptop13 Cursos
list535 Tarefas
Intermediário
4.8
(126)
trilha
lockSomente para Ultimate
track image

Test track with rating

laptop1 Curso
list0 Task
Avançado
4.0
(4)
trilha
lockSomente para Ultimate
track image

TEST TEST TRACK

list0 Task
Iniciante
Become a Development expert
  • Interactive exercisesInteractive exercises
  • Learning videosLearning videos
  • AI-assistant on all coursesAI-assistant on all courses
  • Workspaces for designing your own projectsWorkspaces for designing your own projects

Ready to get started?

ProBest intro offer
UltimateA complete experience to kickstart your career
85+ Top-Rated coursesBenefit accessBenefit access
Completion certificatesBenefit accessBenefit access
AI-Copilot in all coursesBenefit accessBenefit access
20+ hands-on Real-world projectsBenefit accessBenefit access
Personalized study tracksBenefit accessBenefit access
Unlimited workspacesBenefit accessBenefit access
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams
We're sorry to hear that something went wrong. What happened?
some-alt