Java Programming Language, Java SE 6, (Self-Study Course)
Prerrequisitos
Understand object-oriented principles
Be competent in creating programs in any programming language
Create and edit text files using a text editor
Objetivos del curso
Implement input/output (I/O) functionality to read from and write to data and text files and understand advanced I/O streams
Create a simple Transmission Control Protocol/Internet Protocol (TCP/IP) networked client that communicates with a server through sockets
Create multi-threaded programs
Create Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism
Execute a Java technology application from the command line
Use Java data types and expressions
Use Java flow control constructs
Use arrays and other data collections
Implement error-handling techniques using exception handling
Create an event-driven graphical user interface (GUI) using Swing components: panels, buttons, labels, text fields, and text areas
Descripción del Producto
Getting Started
Examine Java technology
Analyze a simple Java technology application
Execute a Java technology application
Object-Oriented Programming
Define modeling concepts: abstraction, encapsulation, and packages
Discuss Java technology application code reuse
Define class, member, attribute, method, constructor, and package
Use the access modifiers private and public as appropriate for the guidelines of encapsulation
Invoke a method on a particular object
Use the Java technology API online documentation
Identifiers, Keywords, and Types
Use comments in a source program
Distinguish between valid and invalid identifiers
Use the eight primitive types
Define literal values for numeric and textual types
Define the terms primitive variable and reference variable
Declare variables of class type
Construct an object using new and describe default initialization
Describe the significance of a reference variable
Expressions and Flow Control
Distinguish between instance and local variables
Describe how to initialize instance variables
Recognize, describe, and use Java software operators
Distinguish between legal and illegal assignments of primitive types
Identify boolean expressions and their requirements in control constructs
Recognize assignment compatibility and required casts in fundamental types
Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program
Arrays
Declare and create arrays of primitive, class, or array types
Explain why elements of an array are initialized
Explain how to initialize the elements of an array
Determine the number of elements in an array
Create a multidimensional array
Write code to copy array values from one array to another
Class Design
Define inheritance, polymorphism, overloading, overriding, and virtual method invocation
Use the access modifiers protected and the default (package-friendly)
Describe the concepts of constructor and method overloading
Describe the complete object construction and initialization operation
Advanced Class Features
Create static variables, methods, and initializers
Create final classes, methods, and variables
Create and use enumerated types
Use the static import statement
Create abstract classes and methods
Create and use an interface
Exceptions and Assertions
Define exceptions
Use try, catch, and finally statements
Describe exception categories
Develop programs to handle your own exceptions
Use assertions
Distinguish appropriate and inappropriate uses of assertions
Enable assertions at runtime
Collections and Generics Framework
Describe the general purpose implementations of the core interfaces in the Collections framework
Examine the Map interface
Examine the legacy collection classes
Create natural and custom ordering by implementing the Comparable and Comparator interfaces
Use generic collections and type parameters in generic classes
Refactor existing non-generic code
Write a program to iterate over a collection
Examine the enhanced for loop
I/O Fundamentals
Write a program that uses command-line arguments and system properties
Examine the Properties class
Construct node and processing streams, and use them appropriately
Serialize and deserialize objects
Distinguish readers and writers from streams, and select appropriately between them
Console I/ O and File I/O
Read data from the console
Write data to the console
Describe files and file I/O
Building Java GUIs Using the Swing API
Describe the JFC Swing technology
Identify the Swing packages
Describe the GUI building blocks: containers, components, and layout managers
Examine top-level, general-purpose, and special-purpose properties of container
Examine components
Examine layout managers
Describe the Swing single-threaded model
Build a GUI using Swing components
Handling GUI-Generated Events
Define events and event handling
Examine the Java SE event model
Describe GUI behavior
Determine the user action that originated an event
Develop event listeners
Describe concurrency in Swing-based GUIs and describe the features of the SwingWorker class
GUI-Based Applications
Describe how to construct a menu bar, menu, and menu items in a Java GUI
Understand how to change the color and font of a component
Threads
Define a thread
Create separate threads in a Java technology program, controlling the code and data that are used by that thread
Control the execution of a thread and write platform-independent code with threads
Describe the difficulties that might arise when multiple threads share data
Use wait and notify to communicate between threads
Use synchronized to protect data from corruption
Networking
Develop code to set up the network connection
Understand TCP/IP
Use ServerSocket and Socket classes to implement TCP/IP clients and servers