Search Here

Latest Java Dumps & java Tips

Enter your email address:

Delivered by FeedBurner

Showing posts with label exam objectives. Show all posts
Showing posts with label exam objectives. Show all posts

Monday, November 16, 2009

Sun Certified Mobile Application Developer for the Java Platform, Micro Edition, Version 1.0 (CX-310-110) Exam Objectives

. Monday, November 16, 2009
0 comments



Exam Objectives

Section 1: JTWI (JSR 185) and Overview of JTWI-Compliant Wireless Applications


  • Identify the goals and characteristics of the JTWI specification (JSR 185), including the mandatory specifications, conditionally required specifications, and the minimum configuration. Compare the relationship and differences between JTWI and other wireless Java technologies.
  • Develop portable applications that are compatible with the requirements and restrictions an application programmer must adhere to, in order to ensure compatibility with a JTWI-compliant device, including resource minimums (standard-size application), clock resolution, and the use of preferred Multi-Purpose Internet Mail Extensions (MIME) names as applicable to Connected Limited Device Configuration (CLDC) 1.0 and 1.1, Mobile Information Device Profile (MIDP) 2.0, Wireless Messaging API (WMA) 1.1, and Mobile Media API (MMAPI) 1.1).


Section 2: CLDC 1.0 and 1.1


  • Identify correct and incorrect statements or examples about the requirements and scope of the CLDC specification, including the differences between 1.0 and 1.1.
  • Describe the ways in which a CLDC virtual machine does and does not adhere to the Java Language Specification (JLS) and the Java Virtual Machine specification.
  • Identify correct and incorrect statements or examples about CLDC classes including those derived from J2SE, and the CLDC-specific classes, including identifying which core J2SE classes are NOT included in CLDC, or have different behaviors (for example java.lang.String and io classes)
  • Given the differences and limitations of exception/error handling with CLDC devices, handle exceptions correctly.
  • Write code that effectively manages memory and garbage collection.


Section 3: Security (Both CLDC and MIDP)


  • Given a set of requirements, design and build applications given CLDC-specified application-level security, including the sandbox model.
  • Identify correct and incorrect statements or examples about untrusted MIDlet suites.
  • Explain trusted MIDlet suite security authorization and permissions, including the process for MIDlet suite signing.
  • Explain requirements and process of using X.509 public key infrastructure (PKI) authentication for MIDlet suites.


Section 4: Networking


  • Write code using the Generic Connection framework specified by CLDC, recognizing its characteristics, use, classes, and interfaces. This may include identification of the class hierarchy and relationships of the Generic Connection framework.
  • Write code for MIDP 2.0 networking, and issues and limitations related to Hypertext Transfer Protocol (HTTP), HTTPS, and Transmission Control Protocol/Internet Protocol (TCP/IP) sockets and datagram, recognizing which connections are required and which are optional, as well as comparing the issues related to TCP/IP and User Datagram Protocol (UDP) datagrams.
  • Write code using the MIDP 2.0 classes in the javax.microedition.io package, including code that correctly opens, closes, and uses a network connection, using the implications of network blocking operations, scheme, connection number limitations, and character encoding.
  • Given a problem scenario, troubleshoot networking issues for MIDP 2.0.


Section 5: Application Model, Delivery, Lifecycle, and Provisioning


  • Explain the specification guarantees for: browsing for MIDlet suites, transferring MIDlet suites, using HTTP, push registries, basic authentication, installing and updating MIDlet suites, invoking MIDlet suites, and deleting MIDlet suites.
  • Identify correct and incorrect statements or examples about the MIDP application model, including: the MIDP execution environment, MIDlet suites, MIDlet suite packaging (including the manifest and the application descriptor), discovering available services on the device, discovering which version of MIDP and CLDC is on the device.
  • Develop applications that correctly reflect a MIDlet's application lifecycle, including: the purpose of the MIDlet class, communication with the application management software, platform request API, valid MIDlet states and transitions, and the behavior that should and should NOT be implemented within different lifecycle methods (including the constructor).
  • Deploy a MIDP 2.0 application with the correct use of Java Application Descriptor (JAD) files and manifests.
  • Given an installation failure, analyze the problem and develop possible resolutions.
  • Given a set of requirements, develop applications that correctly implement MIDP 2.0 support for delayed or scheduled activities using timers and background threads.


Section 6: MIDP Persistent Storage


  • Develop code that correctly implements handling, sharing, and removing RecordStores within MIDlet suites.
  • Develop code that correctly implements adding, retrieving, modifying, and deleting individual records in a RecordStore, and converting RecordStore record data to and from byte arrays, and that reflects performance implications.
  • Identify correct and incorrect statements or examples about filtering, comparing, event listening, and enumerating records in a RecordStore.


Section 7: Push Registry


  • Explain MIDP 2.0 Push Registry benefits and limitations, and describe its use in applications.
  • Develop applications that correctly use MIDP 2.0 Push Registry including discovery, dynamic compared to static, and recognizing the types of connections that can and cannot be accepted.


Section 8: MIDP User Interface (UI) API


  • Given a scenario, develop MIDP 2.0-compliant user interfaces, recognizing portability requirements and limitations (such as double-buffering not guaranteed), and performance issues (such as using inner classes and freeing memory buffers).
  • Discuss the MIDP user interface high-level API including concurrency, portability, structure of the API, and interplay with the application manager.
  • Explain the MIDP user interface low-level API including font support, repainting, and coordinate system.
  • Given a set of requirements, develop interactive MIDP 2.0 user interface code with proper event-handling (including both the high-level and low-level APIs, repainting and threading issues).
  • Identify correct and incorrect statements or examples about the classes (including the class hierarchy) within the javax.microedition.lcdui package.
  • Compare and contrast high-level and low-level APIs, including layout techniques.
  • Explain requirements, issues, class hierarchy, and relationships between items and screens.


Section 9: MIDP Game API


  • Given a scenario, develop code using the MIDP Game API package to improve performance and reduce application size.
  • Compare and contrast the use of MIDP's GameCanvas class and the MIDP low-level canvas.
  • Given a set of requirements, develop code using MIDP's LayerManager class.
  • Given a set of requirements, develop code using MIDP's Layer, Sprite, and TiledLayer classes.


Section 10: Media Using MIDP 2.0 and the MMAPI 1.1


  • Given a set of requirements, develop code using MMAPI's support for tone generation.
  • Given a set of requirements, develop code that correctly uses MIDP support for sound including audio playback, tone generation, media flow controls (start, stop), media type controls (volume, tone), and media capabilities using "Manager", "Player", and "Control" objects, recognizing the difference between required and optional features.
  • Develop code that correctly uses MMAPI support for playback and recording of media, including the use of the "DataSource", "Player", and "Manager" objects, support for audio and video capture and playback, system properties queries, recognizing the difference between required and optional features.
  • Identify correct and incorrect statements or examples about the media class hierarchies in both MIDP 2.0 and MMAPI 1.1.


Section 11: Wireless Messaging API 1.1


  • Describe the WMA's basic support for sending and receiving messages, and the Generic Connection Framework.
  • Explain the WMA's support for Short Message Service (SMS) and Cell Broadcast capabilities.
  • Identify correct and incorrect statements or examples about WMA including the WMA addressing scheme, client vs. server connections, WMA-related exceptions, WMA-related security issues, message size limitation, message creation, sending, synchronous compared to asynchronous message receipt, and the relationship between WMA and Push Registry.

Read More »»

Sun Certified Enterprise Architect for the Java Platform, Enterprise Edition 5 (CX-310-052) Exam Objectives

.
0 comments



Assignment Objectives

Section 1: Application Design Concepts and Principles


  • Explain the main advantages of an object-oriented approach to system design including the effect of encapsulation, inheritance, and use of interfaces on architectural characteristics.
  • Describe how the principle of "separation of concerns" has been applied to the main system tiers of a Java Platform, Enterprise Edition application. Tiers include client (both GUI and web), web (web container), business (EJB container), integration, and resource tiers.
  • Describe how the principle of "separation of concerns" has been applied to the layers of a Java EE application. Layers include application, virtual platform (component APIs), application infrastructure (containers), enterprise services (operating system and virtualization), compute and storage, and the networking infrastructure layers.


Section 2: Common Architectures


  • Explain the advantages and disadvantages of two-tier architectures when examined under the following topics: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security.
  • Explain the advantages and disadvantages of three-tier architectures when examined under the following topics: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security
  • Explain the advantages and disadvantages of multi-tier architectures when examined under the following topics: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security.
  • Explain the benefits and drawbacks of rich clients and browser-based clients as deployed in a typical Java EE application.
  • Explain appropriate and inappropriate uses for web services in the Java EE platform


Section 3: Integration and Messaging


  • Explain possible approaches for communicating with an external system from a Java EE technology-based system given an outline description of those systems and outline the benefits and drawbacks of each approach.
  • Explain typical uses of web services and XML over HTTP as mechanisms to integrate distinct software components.
  • Explain how JCA and JMS are used to integrate distinct software components as part of an overall Java EE application.


Section 4: Business Tier Technologies


  • Explain and contrast uses for entity beans, entity classes, stateful and stateless session beans, and message-driven beans, and understand the advantages and disadvantages of each type.
  • Explain and contrast the following persistence strategies: container-managed persistence (CMP) BMP, JDO, JPA, ORM and using DAOs (Data Access Objects) and direct JDBC technology-based persistence under the following headings: ease of development, performance, scalability, extensibility, and security.
  • Explain how Java EE supports the deployment of server-side components implemented as web services and the advantages and disadvantages of adopting such an approach.
  • Explain the benefits of the EJB 3 development model over previous EJB generations for ease of development including how the EJB container simplifies EJB development.


Section 5: Web Tier Technologies


  • State the benefits and drawbacks of adopting a web framework in designing a Java EE application
  • Explain standard uses for JSP pages and servlets in a typical Java EE application.
  • Explain standard uses for JavaServer Faces components in a typical Java EE application.
  • Given a system requirements definition, explain and justify your rationale for choosing a web-centric or EJB-centric implementation to solve the requirements. Web-centric means that you are providing a solution that does not use EJB components. EJB-centric solution will require an application server that supports EJB components.


Section 6: Applicability of Java EE Technology


  • Given a specified business problem, design a modular solution that solves the problem using Java EE.
  • Explain how the Java EE platform enables service oriented architecture (SOA) -based applications.
  • Explain how you would design a Java EE application to repeatedly measure critical non-functional requirements and outline a standard process with specific strategies to refactor that application to improve on the results of the measurements.


Section 7: Patterns


  • From a list, select the most appropriate pattern for a given scenario. Patterns are limited to those documented in the book - Alur, Crupi and Malks (2003). Core J2EE Patterns: Best Practices and Design Strategies 2nd Edition and named using the names given in that book.
  • From a list, select the most appropriate pattern for a given scenario. Patterns are limited to those documented in the book - Gamma, Erich; Richard Helm, Ralph Johnson, and John Vlissides (1995). Design Patterns: Elements of Reusable Object-Oriented Software and are named using the names given in that book.
  • From a list, select the benefits and drawbacks of a pattern drawn from the book - Gamma, Erich; Richard Helm, Ralph Johnson, and John Vlissides (1995). Design Patterns: Elements of Reusable Object-Oriented Software.
  • From a list, select the benefits and drawbacks of a specified Core J2EE pattern drawn from the book – Alur, Crupi and Malks (2003). Core J2EE Patterns: Best Practices and Design Strategies 2nd Edition.


Section 8: Security


  • Explain the client-side security model for the Java SE environment, including the Web Start and applet deployment modes.
  • Given an architectural system specification, select appropriate locations for implementation of specified security features, and select suitable technologies for implementation of those features
  • Identify and classify potential threats to a system and describe how a given architecture will address the threats.
  • Describe the commonly used declarative and programmatic methods used to secure applications built on the Java EE platform, for example use of deployment descriptors and JAAS.

Read More »»

Sun Certified Developer for Java Web Services (CX-310-230) Exam Objectives

.
0 comments



Exam Objectives

Section 1: XML Web Service Standards


  • Given XML documents, schemas, and fragments determine whether their syntax and form are correct (according to W3C schema) and whether they conform to the WS-I Basic Profile 1.1.
  • Describe the use of XML schema in J2EE Web services.


Section 2: SOAP 1.2 Web Service Standards


  • List and describe the encoding types used in a SOAP message.
  • Describe the SOAP Processing and Extensibility Model.
  • Describe SOAP Message Construct and create a SOAP message that contains an attachment.


Section 3: Describing and Publishing (WSDL and UDDI)


  • Explain the use of WSDL in Web services, including a description of WSDL's basic elements, binding mechanisms and the basic WSDL operation types as limited by the WS-I Basic Profile 1.1.
  • Describe how WSDL enables one to separate the description of the abstract functionality offered by a service from concrete details of a service description such as “how” and “where” that functionality is offered.
  • Describe the Component Model of WSDL including Descriptions, Interfaces, Bindings, Services and Endpoints.
  • Describe the basic functions provided by the UDDI Publish and Inquiry APIs to interact with a UDDI business registry.


Section 4: JAX-WS


  • Explain JAX-WS technology for building web services and client that communicate using XML.
  • Given a set of requirements for a Web service, such as transactional needs, and security requirements, design and develop Web service applications that use JAX-WS technology.
  • Describe the Integrated Stack (I-Stack) which consist of JAX-WS, JAXB, StAX, SAAJ.
  • Describe and compare JAX-WS development approaches.
  • Describe the features of JAX-WS including the usage of Java Annotations.
  • Describe the architecture of JAX_WS including the Tools SPI that define the contract between JAX-WS tools and Java EE.
  • Describe creating a Web Service using JAX-WS.
  • Describe JAX-WS Client Communications Models.
  • Given an set of requirements, design and develop a Web service client, such as a Java EE client and a stand-alone client, using JAX-WS.
  • Given a set of requirements, create and configure a Web service client that accesses a stateful Web service.


Section 5: REST, JSON, SOAP and XML Processing APIs (JAXP, JAXB and SAAJ)


  • Describe the characteristics of REST Web Services.
  • Describe the characteristics of JSON Web Services.
  • Compare SOAP web services to REST Web Services.
  • Compare SOAP web services to JSON Web Services.
  • Describe the functions and capabilities of the APIs included within JAXP.
  • Describe the functions and capabilities of JAXB, including the JAXB process flow, such as XML-to-Java and Java-to-XML, and the binding and validation mechanisms provided by JAXB.
  • Create and use a SOAP message with attachments using the SAAJ APIs.


Section 6: JAXR


  • Describe the function of JAXR in Web service architectural model, the two basic levels of business registry functionality supported by JAXR, and the function of the basic JAXR business objects and how they map to the UDDI data structures.
  • Create JAXR client to connect to a UDDI business registry, execute queries to locate services that meet specific requirements, and publish or update information about a business service.


Section 7: J2EE Web Services


  • Identify the characteristics of and the services and APIs included in the Java EE platform.
  • Explain the benefits of using the Java EE platform for creating and deploying Web service applications.
  • Describe the functions and capabilities of the JAXP, DOM, SAX, StAX, JAXR, JAXB, JAX-WS and SAAJ in the Java EE platform.
  • Describe the role of the WS-I Basic Profile when designing Java EE Web services.


Section 8: Security


  • Explain basic security mechanisms including: transport level security, such as basic and mutual authentication and SSL, message level security, XML encryption, XML Digital Signature, and federated identity and trust.
  • Identify the purpose and benefits of Web services security oriented initiatives and standards such as Username Token Profile, SAML, XACML, XKMS, WS-Security, and the Liberty Project.
  • Given a scenario, implement Java EE based web service web-tier and/or EJB-tier basic security mechanisms, such as mutual authentication, SSL, and access control.
  • Describe factors that impact the security requirements of a Web service, such as the relationship between the client and service provider, the type of data being exchanged, the message format, and the transport mechanism.
  • Describe WS-Policy that defines a base set of constructs that can be used and extended by other Web services specifications to describe a broad range of service requirements and capabilities.


Section 9: Developing Web Services


  • Describe the steps required to configure, package, and deploy Java EE Web services and service clients, including a description of the packaging formats, such as .ear, .war, .jar, annotations and deployment descriptor settings.
  • Given a set of requirements, develop code to process XML files using the SAX, StAX, DOM, XSLT, and JAXB APIs.
  • Given an XML schema for a document style Web service create a WSDL file that describes the service and generate a service implementation.
  • Given a set of requirements, create code to create an XML-based, document style, Web service using the JAX-WS APIs.
  • Implement a SOAP logging mechanism for testing and debugging a Web service application using Java EE Web Service APIs.
  • Given a set of requirements, create code to handle system and service exceptions and faults received by a Web services client.


Section 10: Web Services Interoperability Technologies


  • Describe WSIT, the features of each WSIT technology and the standards that WSIT.
  • Describe how to create a WSIT client from a Web Service Description Language (WSDL) file.
  • Describe how to configure Web Service providers and clients to use message optimization.
  • Create a Microsoft Windows Communication Foundation (WCF) client that accesses a Java Web Service.
  • Describes the best practices for production and consumption of data for interoperability between WCF Web Services and Java web service clients or between Java WebServices and WCF Web Service clients.


Section 11: General Design and Architecture


  • Describe the characteristics of a service-oriented architecture and how Web Services fit this model.
  • Given a scenario, design a Java EE Web Service using Web Services Design Patterns (Asynchronous Interaction, JMS Bridge, Web Service Cache, Web Serive Broker), and Best Practices.
  • Describe how to handle the various types of return values, faults, errors, and exceptions that can occur during a Web service interaction.
  • Describe the role that Web Services play when integrating data, application functions, or business processes in a Java EE application.


Endpoint Design and Architecture


  • Given a scenario, design Web Service applications using information models that are either procedure-style or document-style.
  • Describe the function of the service interaction and processing layers in a Web Service.
  • Design a Web Service for an asynchronous, document-style process and describe how to refactor a Web Service from a synchronous to an asynchronous model.
  • Describe how the characteristics, such as resource utilization, conversational capabilities, and operational modes, of the various types of Web service clients impact the design of a Web service or determine the type of client that might interact with a particular service.

Read More »»

Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-083): Exam Objectives

.
0 comments

Assignment Objectives

Section 1: The Servlet Technology Model


  • For each of the HTTP Methods (such as GET, POST, HEAD, and so on) describe the purpose of the method and the technical characteristics of the HTTP Method protocol, list triggers that might cause a Client (usually a Web browser) to use the method; and identify the HttpServlet method that corresponds to the HTTP Method.
  • Using the HttpServletRequest interface, write code to retrieve HTML form parameters from the request, retrieve HTTP request header information, or retrieve cookies from the request.
  • Using the HttpServletResponse interface, write code to set an HTTP response header, set the content type of the response, acquire a text stream for the response, acquire a binary stream for the response, redirect an HTTP request to another URL, or add cookies to the response.
  • Describe the purpose and event sequence of the servlet life cycle: (1) servlet class loading, (2) servlet instantiation, (3) call the init method, (4) call the service method, and (5) call destroy method.


Section 2: The Structure and Deployment of Web Applications


  • Construct the file and directory structure of a Web Application that may contain (a) static content, (b) JSP pages, (c) servlet classes, (d) the deployment descriptor, (e) tag libraries, (d) JAR files, and (e) Java class files; and describe how to protect resource files from HTTP access.
  • Describe the purpose and semantics of the deployment descriptor.
  • Construct the correct structure of the deployment descriptor.
  • Explain the purpose of a WAR file and describe the contents of a WAR file, how one may be constructed.


Section 3: The Web Container Model


  • For the ServletContext initialization parameters: write servlet code to access initialization parameters; and create the deployment descriptor elements for declaring initialization parameters.
  • For the fundamental servlet attribute scopes (request, session, and context): write servlet code to add, retrieve, and remove attributes; given a usage scenario, identify the proper scope for an attribute; and identify multi-threading issues associated with each scope.
  • Describe the Web container request processing model; write and configure a filter; create a request or response wrapper; and given a design problem, describe how to apply a filter or a wrapper.
  • Describe the Web container life cycle event model for requests, sessions, and web applications;create and configure listener classes for each scope life cycle; create and configure scope attribute listener classes; and given a scenario, identify the proper attribute listener to use.
  • Describe the RequestDispatcher mechanism; write servlet code to create a request dispatcher; write servlet code to forward or include the target resource; and identify and describe the additional request-scoped attributes provided by the container to the target resource.


Section 4: Session Management


  • Write servlet code to store objects into a session object and retrieve objects from a session object.
  • Given a scenario describe the APIs used to access the session object, explain when the session object was created, and describe the mechanisms used to destroy the session object, and when it was destroyed.
  • Using session listeners, write code to respond to an event when an object is added to a session, and write code to respond to an event when a session object migrates from one VM to another.
  • Given a scenario, describe which session management mechanism the Web container could employ, how cookies might be used to manage sessions, how URL rewriting might be used to manage sessions, and write servlet code to perform URL rewriting.


Section 5: Web Application Security


  • Based on the servlet specification, compare and contrast the following security mechanisms: (a) authentication, (b) authorization, (c) data integrity, and (d) confidentiality.
  • In the deployment descriptor, declare a security constraint, a Web resource, the transport guarantee, the login configuration, and a security role.
  • Compare and contrast the authentication types (BASIC, DIGEST, FORM, and CLIENT-CERT); describe how the type works; and given a scenario, select an appropriate type.


Section 6: The JavaServer Pages (JSP) Technology Model


  • Identify, describe, or write the JSP code for the following elements: (a) template text, (b) scripting elements (comments, directives, declarations, scriptlets, and expressions), (c) standard and custom actions, and (d) expression language elements.
  • Write JSP code that uses the directives: (a) 'page' (with attributes 'import', 'session', 'contentType', and 'isELIgnored'), (b) 'include', and (c) 'taglib'.
  • Write a JSP Document (XML-based document) that uses the correct syntax.
  • Describe the purpose and event sequence of the JSP page life cycle: (1) JSP page translation, (2) JSP page compilation, (3) load class, (4) create instance, (5) call the jspInit method, (6) call the _jspService method, and (7) call the jspDestroy method.
  • Given a design goal, write JSP code using the appropriate implicit objects: (a) request, (b) response, (c) out, (d) session, (e) config, (f) application, (g) page, (h) pageContext, and (i) exception.
  • Configure the deployment descriptor to declare one or more tag libraries, deactivate the evaluation language, and deactivate the scripting language. 6.7 Given a specific design goal for including a JSP segment in another page, write the JSP code that uses the most appropriate inclusion mechanism (the include directive or the jsp:include standard action).


Section 7: Building JSP Pages Using the Expression Language (EL)


  • Given a scenario, write EL code that accesses the following implicit variables including pageScope, requestScope, sessionScope, and applicationScope, param and paramValues, header and headerValues, cookie, initParam and pageContext.
  • Given a scenario, write EL code that uses the following operators: property access (the . operator), collection access (the [] operator).


Section 8: Building JSP Pages Using Standard Actions


  • Given a design goal, create a code snippet using the following standard actions: jsp:useBean (with attributes: 'id', 'scope', 'type', and 'class'), jsp:getProperty, jsp:setProperty (with all attribute combinations), and jsp:attribute.
  • Given a design goal, create a code snippet using the following standard actions: jsp:include, jsp:forward, and jsp:param.


Section 9: Building JSP Pages Using Tag Libraries


  • For a custom tag library or a library of Tag Files, create the 'taglib' directive for a JSP page.
  • Given a design goal, create the custom tag structure in a JSP page to support that goal.
  • Given a design goal, use an appropriate JSP Standard Tag Library (JSTL v1.1) tag from the "core" tag library.


Section 10: Building a Custom Tag Library


  • Describe the semantics of the "Classic" custom tag event model when each event method (doStartTag, doAfterBody, and doEndTag) is executed, and explain what the return value for each event method means; and write a tag handler class.
  • Using the PageContext API, write tag handler code to access the JSP implicit variables and access web application attributes.
  • Given a scenario, write tag handler code to access the parent tag and an arbitrary tag ancestor.
  • Describe the semantics of the "Simple" custom tag event model when the event method (doTag) is executed; write a tag handler class; and explain the constraints on the JSP content within the tag.
  • Describe the semantics of the Tag File model; describe the web application structure for tag files; write a tag file; and explain the constraints on the JSP content in the body of the tag.


Section 11: Java EE Patterns


  • Given a scenario description with a list of issues, select a pattern that would solve the issues. The list of patterns you must know are: Intercepting Filter, Model-View-Controller, Front Controller, Service Locator, Business Delegate, and Transfer Object.
  • Match design patterns with statements describing potential benefits that accrue from the use of the pattern, for any of the following patterns: Intercepting Filter, Model-View-Controller, Front Controller, Service Locator, Business Delegate, and Transfer Object.

Read More »»

SCJP 6.0 (CX-310-065) Exam Objectives

.
1 comments

Exam Objectives

Section 1: Declarations, Initialization and Scoping


  • Develop code that declares classes (including abstract and all forms of nested classes), interfaces, and enums, and includes the appropriate use of package and import statements (including static imports).
  • Develop code that declares an interface. Develop code that implements or extends one or more interfaces. Develop code that declares an abstract class. Develop code that extends an abstract class.
  • Develop code that declares, initializes, and uses primitives, arrays, enums, and objects as static, instance, and local variables. Also, use legal identifiers for variable names.
  • Given a code example, determine if a method is correctly overriding or overloading another method, and identify legal return values (including covariant returns), for the method.
  • Given a set of classes and superclasses, develop constructors for one or more of the classes. Given a class declaration, determine if a default constructor will be created, and if so, determine the behavior of that constructor. Given a nested or non-nested class listing, write code to instantiate the class.


Section 2: Flow Control


  • Develop code that implements an if or switch statement; and identify legal argument types for these statements.
  • Develop code that implements all forms of loops and iterators, including the use of for, the enhanced for loop (for-each), do, while, labels, break, and continue; and explain the values taken by loop counter variables during and after loop execution.
  • Develop code that makes use of assertions, and distinguish appropriate from inappropriate uses of assertions.
  • Develop code that makes use of exceptions and exception handling clauses (try, catch, finally), and declares methods and overriding methods that throw exceptions.
  • Recognize the effect of an exception arising at a specified point in a code fragment. Note that the exception may be a runtime exception, a checked exception, or an error.
  • Recognize situations that will result in any of the following being thrown: ArrayIndexOutOfBoundsException,ClassCastException, IllegalArgumentException, IllegalStateException, NullPointerException, NumberFormatException, AssertionError, ExceptionInInitializerError, StackOverflowError or NoClassDefFoundError. Understand which of these are thrown by the virtual machine and recognize situations in which others should be thrown programatically.


Section 3: API Contents


  • Develop code that uses the primitive wrapper classes (such as Boolean, Character, Double, Integer, etc.), and/or autoboxing & unboxing. Discuss the differences between the String, StringBuilder, and StringBuffer classes.
  • Given a scenario involving navigating file systems, reading from files, writing to files, or interacting with the user, develop the correct solution using the following classes (sometimes in combination), from java.io: BufferedReader, BufferedWriter, File, FileReader, FileWriter, PrintWriter, and Console.
  • Use standard J2SE APIs in the java.text package to correctly format or parse dates, numbers, and currency values for a specific locale; and, given a scenario, determine the appropriate methods to use if you want to use the default locale or a specific locale. Describe the purpose and use of the java.util.Locale class.
  • Write code that uses standard J2SE APIs in the java.util and java.util.regex packages to format or parse strings or streams. For strings, write code that uses the Pattern and Matcher classes and the String.split method. Recognize and use regular expression patterns for matching (limited to: . (dot), * (star), + (plus), ?, \d, \s, \w, [], ()). The use of *, +, and ? will be limited to greedy quantifiers, and the parenthesis operator will only be used as a grouping mechanism, not for capturing content during matching. For streams, write code using the Formatter and Scanner classes and the PrintWriter.format/printf methods. Recognize and use formatting parameters (limited to: %b, %c, %d, %f, %s) in format strings.


Section 4: Concurrency


  • Write code to define, instantiate, and start new threads using both java.lang.Thread and java.lang.Runnable.
  • Recognize the states in which a thread can exist, and identify ways in which a thread can transition from one state to another.
  • Given a scenario, write code that makes appropriate use of object locking to protect static or instance variables from concurrent access problems.


Section 5: OO Concepts


  • Develop code that implements tight encapsulation, loose coupling, and high cohesion in classes, and describe the benefits.
  • Given a scenario, develop code that demonstrates the use of polymorphism. Further, determine when casting will be necessary and recognize compiler vs. runtime errors related to object reference casting.
  • Explain the effect of modifiers on inheritance with respect to constructors, instance or static variables, and instance or static methods.
  • Given a scenario, develop code that declares and/or invokes overridden or overloaded methods and code that declares and/or invokes superclass, or overloaded constructors.
  • Develop code that implements "is-a" and/or "has-a" relationships.


Section 6: Collections / Generics


  • Given a design scenario, determine which collection classes and/or interfaces should be used to properly implement that design, including the use of the Comparable interface.
  • Distinguish between correct and incorrect overrides of corresponding hashCode and equals methods, and explain the difference between == and the equals method.
  • Write code that uses the generic versions of the Collections API, in particular, the Set, List, and Map interfaces and implementation classes. Recognize the limitations of the non-generic Collections API and how to refactor code to use the generic versions. Write code that uses the NavigableSet and NavigableMap interfaces.
  • Develop code that makes proper use of type parameters in class/interface declarations, instance variables, method arguments, and return types; and write generic methods or methods that make use of wildcard types and understand the similarities and differences between these two approaches.
  • Use capabilities in the java.util package to write code to manipulate a list by sorting, performing a binary search, or converting the list to an array. Use capabilities in the java.util package to write code to manipulate an array by sorting, performing a binary search, or converting the array to a list. Use the java.util.Comparator and java.lang.Comparable interfaces to affect the sorting of lists and arrays. Furthermore, recognize the effect of the "natural ordering" of primitive wrapper classes and java.lang.String on sorting.


Section 7: Fundamentals


  • Given a code example and a scenario, write code that uses the appropriate access modifiers, package declarations, and import statements to interact with (through access or inheritance) the code in the example.
  • Given an example of a class and a command-line, determine the expected runtime behavior.
  • Determine the effect upon object references and primitive values when they are passed into methods that perform assignments or other modifying operations on the parameters.
  • Given a code example, recognize the point at which an object becomes eligible for garbage collection, determine what is and is not guaranteed by the garbage collection system, and recognize the behaviors of the Object.finalize() method.
  • Given the fully-qualified name of a class that is deployed inside and/or outside a JAR file, construct the appropriate directory structure for that class. Given a code example and a classpath, determine whether the classpath will allow the code to compile successfully.
  • Write code that correctly applies the appropriate operators including assignment operators (limited to: =, +=, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --), relational operators (limited to: <, <=, >, >=, ==, !=), the instanceof operator, logical operators (limited to: &, |, ^, !, &&, ||), and the conditional operator ( ? : ), to produce a desired result. Write code that determines the equality of two objects or two primitives.

Read More »»

Java Dumps Headline Animator