Programação Orientada a ObjetosClasses e ObjetosOrganização de Código: Pacotes e a Diretiva importEncapsulamento e Modificadores de AcessoMembros Estáticos: O Modificador staticObjetos como ParâmetrosClasses Internas e AninhadasHerançaClasses AbstratasHierarquia, Herança e Conversão de TiposInterfacesInterfaces e CallbacksEnumClasse Object e seus métodosGenericsRestrições de GenericsHerança de GenericsTipos por Referência e Cópia de ObjetosRecordsArquivos compactos e método mainControle de Hierarquias com Classes e Interfaces sealedPattern Matching para TiposPattern Matching com Records