You can use this exam guide to collect all the information about Java SE 7 Programmer II (1Z0-804) certification. The Oracle 1Z0-804 certification is mainly targeted to those candidates who has some experience or exposure of Java and want to flourish their career with Oracle Certified Professional Java SE 7 Programmer (OCP) credential. The Java SE 7 Programmer II certification exam validates your understanding of the Java technology and sets the stage for your future progression. Your preparation plan for Oracle 1Z0-804 Certification exam should include hands-on practice or on-the-job experience performing the tasks described in following Certification Exam Topics table.
Oracle 1Z0-804 Certification Details:
|Exam Name||Java SE 7 Programmer II|
|Exam Product Version||Java SE|
|Exam Price||USD $245 (Pricing may vary by country or by localized currency)|
|Number of Questions||65|
This exam is validated against Java SE 7.
|Recommended Training||Java SE 7 Programming|
|Schedule Exam||Pearson VUE - Oracle|
|Recommended Practice||1Z0-804 Online Practice Exam|
Oracle 1Z0-804 Certification Topics:
|Java Class Design||
- Use access modifiers: private, protected, and public
- Override methods
- Overload constructors and methods
- Use the instanceof operator and casting
- Use virtual method invocation
- Override the hashCode, equals, and toString methods from the Object class to improve the functionality of your class.
- Use package and import statements
|Advanced Class Design||
- Identify when and how to apply abstract classes
- Construct abstract Java classes and subclasses
- Use the static and final keywords
- Create top-level and nested classes
- Use enumerated types
|Object-Oriented Design Principles||
- Write code that declares, implements and/or extends interfaces
- Choose between interface inheritance and class inheritance
- Apply cohesion, low-coupling, IS-A, and HAS-A principles
- Apply object composition principles (including has-a relationships)
- Design a class using a Singleton design pattern
- Write code to implement the Data Access Object (DAO) pattern
- Design and create objects using a factory pattern
|Generics and Collections||
- Create a generic class
- Use the diamond for type inference
- Analyze the interoperability of collections that use raw types and generic types
- Use wrapper classes, autoboxing and unboxing
- Create and use List, Set and Deque implementations
- Create and use Map implementations
- Use java.util.Comparator and java.lang.Comparable
- Sort and search arrays and lists
- Search, parse and build strings (including Scanner, StringTokenizer, StringBuilder, String and Formatter)
- Search, parse, and replace strings by using regular expressions, using expression patterns for matching limited to: . (dot), * (star), + (plus), ?, \d, \D, \s, \S, \w, \W, \b. \B, , ().
- Format strings using the formatting parameters: %b, %c, %d, %f, and %s in format strings.
|Exceptions and Assertions||
- Use throw and throws statements
- Develop code that handles multiple Exception types in a single catch block
- Develop code that uses try-with-resources statements (including using classes that implement the AutoCloseable interface)
- Create custom exceptions
- Test invariants by using assertions
|Java I/O Fundamentals||
- Read and write data from the console
- Use streams to read from and write to files by using classes in the java.io package including BufferedReader, BufferedWriter, File, FileReader, FileWriter, DataInputStream, DataOutputStream, ObjectOutputStream, ObjectInputStream, and PrintWriter
|Java File I/O (NIO.2)||
- Operate on file and directory paths with the Path class
- Check, delete, copy, or move a file or directory with the Files class
- Read and change file and directory attributes, focusing on the BasicFileAttributes, DosFileAttributes, and PosixFileAttributes interfaces
- Recursively access a directory tree using the DirectoryStream and FileVisitor interfaces
- Find a file with the PathMatcher interface
- Watch a directory for changes with the WatchService interface
|Building Database Applications with JDBC||
- Describe the interfaces that make up the core of the JDBC API (including the Driver, Connection, Statement, and ResultSet interfaces and their relationship to provider implementations)
- Identify the components required to connect to a database using the DriverManager class (including the jdbc URL)
- Submit queries and read results from the database (including creating statements, returning result sets, iterating through the results, and properly closing result sets, statements, and connections)
- Use JDBC transactions (including disabling auto-commit mode, committing and rolling back transactions, and setting and rolling back to savepoints)
- Construct and use RowSet objects using the RowSetProvider class and the RowSetFactory interface
- Create and use PreparedStatement and CallableStatement objects
- Manage and control thread lifecycle
- Synchronize thread access to shared data
- Identify code that may not execute correctly in a multi-threaded environment.
- Use collections from the java.util.concurrent package with a focus on the advantages over and differences from the traditional java.util collections.
- Use Lock, ReadWriteLock, and ReentrantLock classes in the java.util.concurrent.locks package to support lock-free thread-safe programming on single variables.
- Use Executor, ExecutorService, Executors, Callable, and Future to execute tasks using thread pools.
- Use the parallel Fork/Join Framework
- Read and set the locale by using the Locale object
- Build a resource bundle for each locale
- Call a resource bundle from an application
- Format dates, numbers, and currency values for localization with the NumberFormat and DateFormat classes (including number format patterns)
- Describe the advantages of localizing an application
- Define a locale using language and country codes
The Oracle 1Z0-804 Certification Program certifies candidates on skills and knowledge related to Java products and technologies. The Oracle Certified Professional Java SE 7 Programmer is granted based on a combination of passing exams, training and performance-based assignments, depending on the level of certification. Oracle 1Z0-804 certification is tangible benchmark of experience and expertise that help you stand out in a crowd among employers. To ensure success, Oracle recommends combining education courses, practice exam and hands-on experience to prepare for your Java SE 7 Programmer II certification exam as questions will test your ability to apply the knowledge you have gained in hands-on practice or professional experience.