{"course":{"productid":14854,"modality":1,"active":true,"language":"en","title":"Java SE 8: Programming","productcode":"D84838","vendorcode":"OR","vendorname":"Oracle","fullproductcode":"OR-D84838","courseware":{"has_ekit":true,"has_printkit":false,"language":"en"},"url":"https:\/\/portal.flane.ch\/course\/oracle-d84838","objective":"<ul>\n<li>Creating high-performing multi-threaded applications<\/li><li>Creating Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism<\/li><li>Implementing input\/output (I\/O) functionality to read from and write to data and text files and understand advanced I\/O streams<\/li><li>Executing a Java technology application from the command line<\/li><li>Manipulating files, directories and file systems using the JDK NIO.2 specification<\/li><li>Creating applications that use the Java Collections framework<\/li><li>Performing multiple operations on database tables, including creating, reading, updating and deleting using both JDBC and JPA technology<\/li><li>Searching and filter collections using Lambda Expressions<\/li><li>Implementing error-handling techniques using exception handling<\/li><li>Using Lambda Expression concurrency features<\/li><\/ul>","essentials":"<ul>\n<li>Java SE 8 Fundamentals<\/li><li><span class=\"cms-link-marked\"><a class=\"fl-href-prod\" href=\"\/swisscom\/en\/course\/oracle-d83527\"><svg role=\"img\" aria-hidden=\"true\" focusable=\"false\" data-nosnippet class=\"cms-linkmark\"><use xlink:href=\"\/css\/img\/icnset-linkmarks.svg#linkmark\"><\/use><\/svg>Java SE 8: Fundamentals <span class=\"fl-prod-pcode\">(D83527)<\/span><\/a><\/span><\/li><\/ul>","audience":"<ul>\n<li>Java EE Developers<\/li><li>Developer<\/li><li>Java Developers<\/li><\/ul>","outline":"<h5>Java Platform Overview<\/h5><ul>\n<li>Defining how the Java language achieves platform independence<\/li><li>Differentiating between the Java ME, Java SE, and Java EE Platforms<\/li><li>Evaluating Java libraries, middle-ware, and database options<\/li><li>Defining how the Java language continues to evolve<\/li><\/ul><h5>Java Syntax and Class Review<\/h5><ul>\n<li>Creating simple Java classes<\/li><li>Creating primitive variables<\/li><li>Using operators<\/li><li>Creating and manipulate strings<\/li><li>Using if-else and switch statements<\/li><li>Iterating with loops: while,do-while,for,enhanced for<\/li><li>Creating arrays<\/li><li>Using Java fields, constructors, and methods<\/li><\/ul><h5>Encapsulation and Subclassing<\/h5><ul>\n<li>Using encapsulation in Java class design<\/li><li>Modeling business problems using Java classes<\/li><li>Making classes immutable<\/li><li>Creating and use Java subclasses<\/li><li>Overloading methods<\/li><\/ul><h5>Overriding Methods, Polymorphism, and Static Classes<\/h5><ul>\n<li>Using access levels: private, protected, default, and public.<\/li><li>Overriding methods<\/li><li>Using virtual method invocation<\/li><li>Using varargs to specify variable arguments<\/li><li>Using the instanceof operator to compare object types<\/li><li>Using upward and downward casts<\/li><li>Modeling business problems by using the static keyword<\/li><li>Implementing the singleton design pattern<\/li><\/ul><h5>Abstract and Nested Classes<\/h5><ul>\n<li>Designing general-purpose base classes by using abstract classes<\/li><li>Constructing abstract Java classes and subclasses<\/li><li>Applying final keyword in Java<\/li><li>Distinguish between top-level and nested classes<\/li><\/ul><h5>Interfaces and Lambda Expressions<\/h5><ul>\n<li>Defining a Java interface<\/li><li>Choosing between interface inheritance and class inheritance<\/li><li>Extending an interface<\/li><li>Defaulting methods<\/li><li>Anonymous inner classes<\/li><li>Defining a Lambda Expression<\/li><\/ul><h5>Collections and Generics<\/h5><ul>\n<li>Creating a custom generic class<\/li><li>Using the type inference diamond to create an object<\/li><li>Creating a collection by using generics<\/li><li>Implementing an ArrayList<\/li><li>Implementing a TreeSet<\/li><li>Implementing a HashMap<\/li><li>Implementing a Deque<\/li><li>Ordering collections<\/li><\/ul><h5>Collections Streams, and Filters<\/h5><ul>\n<li>Describing the Builder pattern<\/li><li>Iterating through a collection using lambda syntax<\/li><li>Describing the Stream interface<\/li><li>Filtering a collection using lambda expressions<\/li><li>Calling an existing method using a method reference<\/li><li>Chaining multiple methods together<\/li><li>Defining pipelines in terms of lambdas and collections<\/li><\/ul><h5>Lambda Built-in Functional Interfaces<\/h5><ul>\n<li>Listing the built-in interfaces included in java.util.function<\/li><li>Core interfaces - Predicate, Consumer, Function, Supplier<\/li><li>Using primitive versions of base interfaces<\/li><li>Using binary versions of base interfaces<\/li><\/ul><h5>Lambda Operations<\/h5><ul>\n<li>Extracting data from an object using map<\/li><li>Describing the types of stream operations<\/li><li>Describing the Optional class<\/li><li>Describing lazy processing<\/li><li>Sorting a stream<\/li><li>Saving results to a collection using the collect method<\/li><li>Grouping and partition data using the Collectors class<\/li><\/ul><h5>Exceptions and Assertions<\/h5><ul>\n<li>Defining the purpose of Java exceptions<\/li><li>Using the try and throw statements<\/li><li>Using the catch, multi-catch, and finally clauses<\/li><li>Autoclose resources with a try-with-resources statement<\/li><li>Recognizing common exception classes and categories<\/li><li>Creating custom exceptions<\/li><li>Testing invariants by using assertions<\/li><\/ul><h5>Java Date\/Time API<\/h5><ul>\n<li>Creating and manage date-based events<\/li><li>Creating and manage time-based events<\/li><li>Combining date and time into a single object<\/li><li>Working with dates and times across time zones<\/li><li>Managing changes resulting from daylight savings<\/li><li>Defining and create timestamps, periods and durations<\/li><li>Applying formatting to local and zoned dates and times<\/li><\/ul><h5>I\/O Fundamentals<\/h5><ul>\n<li>Describing the basics of input and output in Java<\/li><li>Read and write data from the console<\/li><li>Using streams to read and write files<\/li><li>Writing and read objects using serialization<\/li><\/ul><h5>File I\/O (NIO.2)<\/h5><ul>\n<li>Using the Path interface to operate on file and directory paths<\/li><li>Using the Files class to check, delete, copy, or move a file or directory<\/li><li>Using Stream API with NIO2<\/li><\/ul><h5>Concurrency<\/h5><ul>\n<li>Describing operating system task scheduling<\/li><li>Creating worker threads using Runnable and Callable<\/li><li>Using an ExecutorService to concurrently execute tasks<\/li><li>Identifying potential threading problems<\/li><li>Using synchronized and concurrent atomic to manage atomicity<\/li><li>Using monitor locks to control the order of thread execution<\/li><li>Using the java.util.concurrent collections<\/li><\/ul><h5>The Fork-Join Framework<\/h5><ul>\n<li>Parallelism<\/li><li>The need for Fork-Join<\/li><li>Work stealing<\/li><li>RecursiveTask<\/li><li>RecursiveTask<\/li><\/ul><h5>Parallel Streams<\/h5><ul>\n<li>Reviewing the key characteristics of streams<\/li><li>Describing how to make a stream pipeline execute in parallel<\/li><li>List the key assumptions needed to use a parallel pipeline<\/li><li>Defining reduction<\/li><li>Describing why reduction requires an associative function<\/li><li>Calculating a value using reduce<\/li><li>Describing the process for decomposing and then merging work<\/li><li>Listing the key performance considerations for parallel streams<\/li><\/ul><h5>Database Applications with JDBC<\/h5><ul>\n<li>Defining the layout of the JDBC API<\/li><li>Connecting to a database by using a JDBC driver<\/li><li>Submitting queries and get results from the database<\/li><li>Specifying JDBC driver information externally<\/li><li>Performing CRUD operations using the JDBC API<\/li><\/ul><h5>Localization<\/h5><ul>\n<li>Describing the advantages of localizing an application<\/li><li>Defining what a locale represents<\/li><li>Read and set the locale by using the Locale object<\/li><li>Building a resource bundle for each locale<\/li><li>Calling a resource bundle from an application<\/li><li>Changing the locale for a resource bundle<\/li><\/ul>","summary":"<p>This Java SE 8 Programming training covers the core language features and Application Programming Interfaces (API) you will use to design object-oriented applications with Java Standard Edition 8 (Java SE 8) Platform.<\/p>\n<h5>Learn To:<\/h5><ul>\n<li>Create Java technology applications with the latest JDK Technology<\/li><li>Develop your object-oriented skills<\/li><li>Identify good practices in the use of the language to create robust Java application<\/li><li>Use Lambda expressions in Java applications<\/li><li>Store and manipulate data using collections<\/li><li>Manipulate files, directories and file systems<\/li><li>Connect to databases using standard SQL queries through JDBC<\/li><li>Create high-performance multi-threaded applications<\/li><\/ul><h5>Benefits to You<\/h5><p>You can use this course to further develop your skills with the Java language and prepare for the Oracle Certified Professional, Java SE 8 Programmer Exam!<\/p>","objective_plain":"- Creating high-performing multi-threaded applications\n- Creating Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism\n- Implementing input\/output (I\/O) functionality to read from and write to data and text files and understand advanced I\/O streams\n- Executing a Java technology application from the command line\n- Manipulating files, directories and file systems using the JDK NIO.2 specification\n- Creating applications that use the Java Collections framework\n- Performing multiple operations on database tables, including creating, reading, updating and deleting using both JDBC and JPA technology\n- Searching and filter collections using Lambda Expressions\n- Implementing error-handling techniques using exception handling\n- Using Lambda Expression concurrency features","essentials_plain":"- Java SE 8 Fundamentals\n- Java SE 8: Fundamentals (D83527)","audience_plain":"- Java EE Developers\n- Developer\n- Java Developers","outline_plain":"Java Platform Overview\n\n\n- Defining how the Java language achieves platform independence\n- Differentiating between the Java ME, Java SE, and Java EE Platforms\n- Evaluating Java libraries, middle-ware, and database options\n- Defining how the Java language continues to evolve\nJava Syntax and Class Review\n\n\n- Creating simple Java classes\n- Creating primitive variables\n- Using operators\n- Creating and manipulate strings\n- Using if-else and switch statements\n- Iterating with loops: while,do-while,for,enhanced for\n- Creating arrays\n- Using Java fields, constructors, and methods\nEncapsulation and Subclassing\n\n\n- Using encapsulation in Java class design\n- Modeling business problems using Java classes\n- Making classes immutable\n- Creating and use Java subclasses\n- Overloading methods\nOverriding Methods, Polymorphism, and Static Classes\n\n\n- Using access levels: private, protected, default, and public.\n- Overriding methods\n- Using virtual method invocation\n- Using varargs to specify variable arguments\n- Using the instanceof operator to compare object types\n- Using upward and downward casts\n- Modeling business problems by using the static keyword\n- Implementing the singleton design pattern\nAbstract and Nested Classes\n\n\n- Designing general-purpose base classes by using abstract classes\n- Constructing abstract Java classes and subclasses\n- Applying final keyword in Java\n- Distinguish between top-level and nested classes\nInterfaces and Lambda Expressions\n\n\n- Defining a Java interface\n- Choosing between interface inheritance and class inheritance\n- Extending an interface\n- Defaulting methods\n- Anonymous inner classes\n- Defining a Lambda Expression\nCollections and Generics\n\n\n- Creating a custom generic class\n- Using the type inference diamond to create an object\n- Creating a collection by using generics\n- Implementing an ArrayList\n- Implementing a TreeSet\n- Implementing a HashMap\n- Implementing a Deque\n- Ordering collections\nCollections Streams, and Filters\n\n\n- Describing the Builder pattern\n- Iterating through a collection using lambda syntax\n- Describing the Stream interface\n- Filtering a collection using lambda expressions\n- Calling an existing method using a method reference\n- Chaining multiple methods together\n- Defining pipelines in terms of lambdas and collections\nLambda Built-in Functional Interfaces\n\n\n- Listing the built-in interfaces included in java.util.function\n- Core interfaces - Predicate, Consumer, Function, Supplier\n- Using primitive versions of base interfaces\n- Using binary versions of base interfaces\nLambda Operations\n\n\n- Extracting data from an object using map\n- Describing the types of stream operations\n- Describing the Optional class\n- Describing lazy processing\n- Sorting a stream\n- Saving results to a collection using the collect method\n- Grouping and partition data using the Collectors class\nExceptions and Assertions\n\n\n- Defining the purpose of Java exceptions\n- Using the try and throw statements\n- Using the catch, multi-catch, and finally clauses\n- Autoclose resources with a try-with-resources statement\n- Recognizing common exception classes and categories\n- Creating custom exceptions\n- Testing invariants by using assertions\nJava Date\/Time API\n\n\n- Creating and manage date-based events\n- Creating and manage time-based events\n- Combining date and time into a single object\n- Working with dates and times across time zones\n- Managing changes resulting from daylight savings\n- Defining and create timestamps, periods and durations\n- Applying formatting to local and zoned dates and times\nI\/O Fundamentals\n\n\n- Describing the basics of input and output in Java\n- Read and write data from the console\n- Using streams to read and write files\n- Writing and read objects using serialization\nFile I\/O (NIO.2)\n\n\n- Using the Path interface to operate on file and directory paths\n- Using the Files class to check, delete, copy, or move a file or directory\n- Using Stream API with NIO2\nConcurrency\n\n\n- Describing operating system task scheduling\n- Creating worker threads using Runnable and Callable\n- Using an ExecutorService to concurrently execute tasks\n- Identifying potential threading problems\n- Using synchronized and concurrent atomic to manage atomicity\n- Using monitor locks to control the order of thread execution\n- Using the java.util.concurrent collections\nThe Fork-Join Framework\n\n\n- Parallelism\n- The need for Fork-Join\n- Work stealing\n- RecursiveTask\n- RecursiveTask\nParallel Streams\n\n\n- Reviewing the key characteristics of streams\n- Describing how to make a stream pipeline execute in parallel\n- List the key assumptions needed to use a parallel pipeline\n- Defining reduction\n- Describing why reduction requires an associative function\n- Calculating a value using reduce\n- Describing the process for decomposing and then merging work\n- Listing the key performance considerations for parallel streams\nDatabase Applications with JDBC\n\n\n- Defining the layout of the JDBC API\n- Connecting to a database by using a JDBC driver\n- Submitting queries and get results from the database\n- Specifying JDBC driver information externally\n- Performing CRUD operations using the JDBC API\nLocalization\n\n\n- Describing the advantages of localizing an application\n- Defining what a locale represents\n- Read and set the locale by using the Locale object\n- Building a resource bundle for each locale\n- Calling a resource bundle from an application\n- Changing the locale for a resource bundle","summary_plain":"This Java SE 8 Programming training covers the core language features and Application Programming Interfaces (API) you will use to design object-oriented applications with Java Standard Edition 8 (Java SE 8) Platform.\n\nLearn To:\n\n\n- Create Java technology applications with the latest JDK Technology\n- Develop your object-oriented skills\n- Identify good practices in the use of the language to create robust Java application\n- Use Lambda expressions in Java applications\n- Store and manipulate data using collections\n- Manipulate files, directories and file systems\n- Connect to databases using standard SQL queries through JDBC\n- Create high-performance multi-threaded applications\nBenefits to You\n\nYou can use this course to further develop your skills with the Java language and prepare for the Oracle Certified Professional, Java SE 8 Programmer Exam!","version":"1.0","duration":{"unit":"d","value":5,"formatted":"5 days"},"pricelist":{"List Price":{"CH":{"country":"CH","currency":"EUR","taxrate":8.1,"price":2390},"AT":{"country":"AT","currency":"EUR","taxrate":20,"price":2390}}},"lastchanged":"2020-01-13T11:46:43+01:00","parenturl":"https:\/\/portal.flane.ch\/swisscom\/en\/json-courses","nexturl_course_schedule":"https:\/\/portal.flane.ch\/swisscom\/en\/json-course-schedule\/14854","source_lang":"en","source":"https:\/\/portal.flane.ch\/swisscom\/en\/json-course\/oracle-d84838"}}