Kurs om

Java grundkurs

Kurs om hur du programmerar i Java

Java är det största applikationsutvecklingsspråket och har utvecklats på ett imponerande sätt under de två årtionden det har funnits.

Denna kurs ger dig grunderna i språket och delar av det enorma standardbiblioteket, så att du snabbt kan komma igång efter kursen med programutveckling på server-sidan.

Snabbfakta

Namn
Java grundkurs
Ämne
Java & JVM språk
URI
jvm/java-basics
Längd
5 dagar
Nivå
Beginner
Målgrupp
Programmerare
Förkunskaper
Praktiska kunskaper i något programspråk
Programvara & Verktyg
  • Java JDK, version 11 eller senare
  • MS Visual Code || JetBrains IntelliJ IDEA

Kursdatum

Här ser du vilka kursdatum som är tillgängliga. Klicka på en av datumknapparna för att anmäla dig till ett kurstillfälle. På kursen pratar läraren svenska, medan vårt kursmaterial alltid är författat på engelska.

Fjärrkurs

Du sitter bekvämt framför datorn och deltar i kursen via internet. Vi använder programvaran Zoom för alla våra fjärrkurser.

I priset ingår kursmaterial som PDF.

Pris: 25 000 kr + moms

Klassrumskurs

Du sitter bekvämt i ett av våra klassrum, vilka finns centralt placerade i Stockholms innerstad (Östermalmstorg).

I priset ingår tryckt kursmaterial (och som PDF), samt kaffe/te med smörgås på förmiddagen och kaffe/te med bulle på eftermiddagen.

Pris: 28 000 kr + moms

Just nu finns det inga datum tillgängligt. Titta förbi om några dagar eller kontakta oss.

Företagsanpassad Kurs

Om ni är tre eller fler personer från samma företags, kan ni beställa en företagsanpassad kurs. Då håller vi kursen på ett datum som passar er. Antingen på plats i era lokaler eller som en fjärrkurs. Vi kan också hålla den muntliga framställningen på engelska. Klicka på knappen nedan för att be om en offert.

Detta får du lära dig

Här är ett sammandrag i punktform av vad du får lära dig på kursen. Eftersom kursmaterialet är författat på engelska, så återger vi sammandraget också på engelska.

  • Know the basic language components of Java
  • Be able to write Java programs that use container types
  • Understand the use of lambda expressions
  • Be able to write programs that handle files
  • Be able to create executable JAR files

Kursinnehåll

Eftersom kursmaterialet är författat på engelska, så återger vi innehållet också på engelska.

Background and Overview

  • Language evolution & Versions
  • Editions & Distributions
  • Vendors & Implementations
  • Documentations

1 - THE LANGUAGE

The language syntax, data types and statements.

Compilation & Execution of a Java Program

  • The syntax at a glance
  • A typical Java program
  • How to compile
  • How to execute
  • The directory structure of sources and classes

Data Types & Operators

  • Line and block comments
  • Identifiers
  • Reserved words
  • Variables
  • Integral data-types and literals
  • Floating-point data-types and literals
  • Boolean
  • Characters
  • Strings
  • Arrays
  • Enums
  • Arithmetic operators
  • Assignment expression operators
  • Relational operators
  • Logical operators
  • Conditional operator
  • Printing to the console

Statements

  • If statements
  • While loops
  • For loops
  • For-each loops
  • Break & continue
  • Switch statements
  • Imports of classes
  • Reading data from the console

Functions

  • Function declarations
  • Static functions
  • Overloaded functions

2 - CLASSES

Syntax and usage.

Class Syntax

  • Data abstraction and the idea of classes
  • Syntax
  • Visibility
  • Constructors
  • Member variables
  • Initialization
  • Pointers in Java
  • Pointer this
  • Null pointers
  • Function toString
  • Static members

Extended Classes

  • Extendable strategies and the idea of inheritance
  • Syntax
  • What do we mean by inheritance
  • Creating sub-class objects
  • Dynamic binding of function calls
  • Usage of @override
  • Final methods
  • Abstract functions and classes

Interfaces

  • The purpose of using interfaces in Java
  • Interface constants
  • Static interface functions
  • Default interface functions

Exceptions

  • What is an exception
  • Throwing and catching exceptions
  • Understanding the flow of control
  • Stack traces
  • Checked and unchecked exceptions
  • JVM errors
  • Standard exception classes

Inner Classes

  • Static inner classes
  • Anonymous classes
  • Class constructors
  • Anonymous constructors
  • Function finalize()

Special Classes

  • Enum classes
  • Wrapper types
  • Conversion functions
  • Autoboxing
  • Class java.lang.Object
  • Class java.lang.Class
  • Class loading

Generics

  • Generic functions
  • Generic classes
  • Generic interfaces
  • Type restrictions

Lambda Expressions

  • What is a lambda expression
  • What is a functional interface
  • Basic syntax
  • Various use cases
  • Instance method reference
  • Static method reference
  • Constructor method reference
  • Lambda oriented functional interfaces

Annotations

  • What is an annotation
  • Usage of annotations in various libraries
  • Syntax
  • Default values
  • Single value attribute
  • Specifing annotation placements
  • Keeping annotations until run-time

3 - THE LIBRARY

The most used parts of the large standard library.

Text Manipulations

  • String
  • StringBuilder
  • Pattern & Matcher
  • Regex support in java.lang.String
  • Class Formatter
  • Class SimpleDateFormatter

Date & Times

  • Date
  • Calendar
  • Typical idioms for date-time manipulations
  • Overview of the date-time support in Java 8
  • Calendar Builder

Collections

  • Overview of interfaces and implementing classes
  • List & Array-/LinkedList
  • Map & HashMap & TreeMap
  • Understanding the for-each loop
  • Utility classes
  • Ordering of objects
  • Queue
  • Iterator
  • Class Properties
  • Class PropertyResourceBundle

Input & Output

  • Text-oriented I/O
  • Reader & Writer
  • File
  • Typical I/O idioms
  • Binary I/O
  • Input-/OutputStream
  • Serialization
  • Class java.io.File
  • Path & Paths
  • Utility class java.nio.file.Files

Pipeline Streams

  • What is a pipeline stream
  • The anatomy of a pipeline
  • Stream sources
  • Bounded streams
  • Aggregators
  • Collectors
  • Collection aggregation
  • String element joining
  • Understanding reduce()
  • Function filter()
  • Function map()
  • Sorting
  • Other filters

4 - DEVELOPMENT

Brief about how to develop Java applications.

JARs & DOCs

  • Understanding JAR files
  • Setting the class-path
  • Packing a library into a JAR file
  • Executable JARs
  • Understanding JavaDocs
  • Running javadoc

Build Tools

  • What is a build toll
  • Typical build tool tasks
  • Evolution of Java build tools
  • What is a dependency
  • What is an artefact repository
  • How to find 3rd party open-source libraries
  • What is a Maven proxy server
  • What is a Maven artefact repository server
  • Contemporary development work-flow
  • Brief introduction to Gradle

Application Types

  • Applications with GUI
  • Java Web Start
  • Servlets & JSP
  • EJB
  • REST WS applications
  • Tests