Grundkurs 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.
- Java JDK
- MS Visual Code || JetBrains IntelliJ IDEA
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/VAT (25%)
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/VAT (25%)
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 även mixa fjärr- och klassrumskurs, om några av er önskar delta på distans medan resten föredrar att ses på plats.
Här är ett sammandrag av vad du får lära dig på kursen. Du kan också kika på hela kursinnehållet via fliken INNEHÅLL
- 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
Background and Overview
- Language evolution & Versions
- Editions & Distributions
- Vendors & Implementations
- Documentations
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
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 lmabda expression
- What is a functional interface
- Basic syntax
- Various use cases
- Instrance 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
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
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