> For the complete documentation index, see [llms.txt](https://hanfak.gitbook.io/workspace/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hanfak.gitbook.io/workspace/languages/java/intermediate.md).

# Intermediate level java

Here we deal with more complex topics in java such as:

## Object oriented ideas

* classes
  * static methods
  * static fields
  * constructors
  * accessors
* objects
  * instance methods
  * instance fields
* Interfaces
* abstract classes
* Inheritence

## Enums

## Packages and imports

* paths
* naming

## Common classes/libraries

* String
  * REGEX
* ArrayList/List
* Map/HashMap
* ZoneDateTime

## Exceptions

* Checked
* Unchecked
* try/catch
* try with resources

## Comparators

* Comparable interface
* compareTo

## Generics

* PECS
* wildcards
* casting
* types
