Skip to content

This project, titled "Java Practice", is a comprehensive guide for learning and revising Java programming concepts. It is designed to be a resource for both beginners and experienced developers who want to refresh their knowledge of Java.

Notifications You must be signed in to change notification settings

jhon0010/java-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Java Practice

This repository is dedicated to reviewing and revising basic Java concepts. It serves as a comprehensive guide for those who are new to Java or those who want to refresh their knowledge. The repository covers a wide range of topics, from basic syntax to more complex concepts like threading and collections.

Table of Contents

  1. Java Basics
  2. Threading in Java
  3. Collections in Java
  4. Java 8
  5. Java 9
  6. Java 10
  7. Java 11
  8. Java 12
  9. Java 13
  10. Java 14
  11. Java 15
  12. Java 16
  13. Java 17
  14. Java 18
  15. Java 19
  16. Java 20
  17. Java 21

Java Basics

This section covers the basic syntax and concepts of the Java programming language. It includes topics such as variables, data types, operators, control flow statements, and more. To navigate to this section, go to the src/main/java/core_concepts directory in the project.

Threading in Java

This section provides examples and explanations on how to create and manage threads in Java. It covers two different ways of creating a thread: by extending the Thread class and by implementing the Runnable interface. To navigate to this section, go to the src/main/java/core_concepts/threads directory in the project.

Collections in Java

This section focuses on the collections framework in Java. It provides examples and explanations on how to use and manipulate collections, with a particular focus on HashMap. To navigate to this section, go to the src/main/java/core_concepts/collections directory in the project.

Java 8

This section covers the new features introduced in Java 8, including lambda expressions, functional interfaces, streams, and method references. To navigate to this section, go to the src/main/java/features_versions/eight_8 directory in the project.

Java 9

Java 9 introduced the concept of modules to provide a higher level of abstraction to manage large codebases. It also includes enhancements to the HttpClient API. To navigate to this section, go to the src/main/java/features_versions/nine_9 directory in the project.

Java 10

Java 10 introduced the concept of local-variable type inference to enhance the language's readability and simplicity. To navigate to this section, go to the src/main/java/features_versions/ten_10 directory in the project.

Java 11

Java 11 introduced the HttpClient API, which can be used to send HTTP requests and receive HTTP responses. It also introduced new string methods. To navigate to this section, go to the src/main/java/features_versions/eleven_11 directory in the project.

Java 12

Java 12 introduced the switch expressions feature, which simplifies coding by extending the switch statement so it can be used as either a statement or an expression. To navigate to this section, go to the src/main/java/features_versions/twelve_12 directory in the project.

Java 13

Java 13 introduced text blocks, which are a multi-line string literal that avoids the need for most escape sequences and automatically formats the string in a predictable manner. To navigate to this section, go to the src/main/java/features_versions/thirteen_13 directory in the project.

Java 14

Java 14 introduced records, which are a special kind of class that is a transparent holder for a fixed set of values. It also introduced pattern matching for the instanceof operator. To navigate to this section, go to the src/main/java/features_versions/fourteen_14 directory in the project.

Java 15

Java 15 introduced sealed classes, which are classes or interfaces that impose restrictions on which other classes or interfaces may extend or implement them. To navigate to this section, go to the src/main/java/features_versions/fiveteen_15 directory in the project.

Java 16

Java 16 introduced the Vector API, which is an experimental API to express vector computations that reliably compile at runtime to optimal vector hardware instructions on supported CPU architectures. To navigate to this section, go to the src/main/java/features_versions/sixteen_16 directory in the project.

Java 17

Java 17 introduced the concept of sealed classes and interfaces. It also introduced enhancements to the pseudo-random number generators. To navigate to this section, go to the src/main/java/features_versions/seventeen_17 directory in the project.

Java 18

Java 18 introduced the concept of dominance checking for the same type. It also introduced the Internet Address Resolution SPI. To navigate to this section, go to the src/main/java/features_versions/eighteen_18 directory in the project.

Java 19

Java 19 introduced the concept of foreign function and memory API. It also introduced the concept of record patterns and structured concurrency API. To navigate to this section, go to the src/main/java/features_versions/nineteen_19 directory in the project.

Java 20

Java 20 introduced the concept of scoped values. To navigate to this section, go to the src/main/java/features_versions/twenty_20 directory in the project.

Java 21

Java 21 introduced the concept of sequenced collections and string templates. It also introduced enhancements to the HttpClient lifecycle and the ProcessBuilder class. To navigate to this section, go to the src/main/java/features_versions/twentyone_21 directory in the project. This section focuses on the collections framework in Java. It provides examples and explanations on how to use and manipulate collections, with a particular focus on HashMap.

About

This project, titled "Java Practice", is a comprehensive guide for learning and revising Java programming concepts. It is designed to be a resource for both beginners and experienced developers who want to refresh their knowledge of Java.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages