SCJA Tips

If you learn about the following points, you will most certainly get a great score from the SCJA (Sun Certified Java Associate) exam. They cover most of the answers from the previous exams :

  • By definition an enumerated type is a finite set of symbolic literals
  • In Java an enumerated type is represented as first-class object.
  • Enumerated type literals are allowed in case statements.
  • The literals of an enumerated type may be of any valid Java identifier
  • An interface may NOT contain any concrete method implementations
  • An interface is NOT a class of any style.
  • An interface defines a set of abstract methods that may have many implementations.
  • An interface is NOT a member of a class.
  • Both class associations and class compositions relationship may be of any multiplicity.
  • compositions may also have navigation methods, but these methods must NOT pass references to the owned objects. This is usually achieved by passing back a copy of the object rather than the owned object itself. Composition implies that the owning object controls the life cycle of the owned bject.
  • Dependency : one object uses another object during computations.
  • the portability of a Java application is NOT dependent
  • upon whether information hiding was used. the class cannot protect bad assignments. For example, setting a negative value for an account balance.
  • classes that do NOT support information hiding are NOT treated specially in Java
  • Disadvantages of information hiding: Access to object
  • attributes incur a runtime penalty.However, the Sun hotspot JVM usually can eliminate the added overhead by “inlining” the methods where they are called.
  • It is time consuming to use methods to access object attributes rather than direct access.
  • Information hiding does NOT restrict the reusability of a superclass.
  • Interfaces are only contracts (declarations of public methods) and a program needs classes for actual behavior.
  • NOT every class will have behavior that requires an explicit contract (interface).
  • It is the reference variables to objects that need to be as generic as possible. This is the essence of the “program to an interface” principle.
  • An interface cannot be instantiated using the new operator
  • The minus symbol in a uml class diagram signifies private visibility
  • the + symbol in a uml class diagram signifies public visibility
  • encapsulation: all of its attributes be private and it provides appropriate public accessor and mutator methods.
  • UML: attribute representation: – attr : int
  • UML
    • ? is NOT a valid multiplicity indicator.
    • 0..* indicates zero or more multiplicity.
    • 0..1 indicates zero or one multiplicity, which is how you can represent an optional association.
    • ?..1 is NOT a valid multiplicity indicator.
    • ? is NOT a valid multiplicity indicator.
    • * is an abbreviation for 0..*.
    • M is NOT a valid multiplicity indicator.
    • ? is NOT a valid multiplicity indicator.
    • 0..* is exactly how to indicate zero or more.
    • M is NOT a valid multiplicity indicator.
  • Enums and arrays make use of object references
  • A source file can have zero package statements or one package statement.
  • A source file automatically imports all classes of its package.
  • java -version com.example.MyProgram: The Java interpreter prints the version information and exits.
  • The Collections APIs contain interfaces for lists and sets.
  • The Collections APIs are in the java.util package.
  • the classes for TCP and UDP communication are contained in the java.net package.
  • cell phone side of an application requires the micro edition and the server side with EJB requires the enterprise edition
  • the J2SE platform has rich GUI capabilities, as well as IP communication capabilities allowing multiple, Internet-wide applications to exchange data.
  • TCP/IP sockets are the basis of RMI.
  • RMI may create new threads for each request.
  • JMS is used to communicate with messaging services asynchronously.
  • HTML does NOT provide interactive capabilities.
  • HTML does NOT provide a rich set of UI components.
  • HTML does provide navigation capabilities, such as hyperlinks.
  • HTML does provide rich text formatting capabilities, such as tables and cascading style sheets.
  • J2me include APIs for playing audio media.
  • J2ME provides limited user interface components.
  • J2ME applications usually execute on small devices with small screen resolution, which cannot support rich UI components.
  • an Applet executes within a security sandbox that, by default, prohibits access to the user’s filesystem.
  • an Applet might fail to execute correctly (or at all) if the web browser does NOT have the appropriate JRE installed.
  • an Applet does NOT have access to the web browser’s cookie information.
  • the default security sandbox does permit communication with the originating enterprise server.
  • Applets execute in a security sandbox that does NOT permit access to files on the client system.
  • Applets can be used to create animated games. However, Applets do NOT have access to gaming-specific APIs like J2ME applications do.
  • Applets cannot connect to arbitrary Internet servers.
  • Applets may connect to the server that delivered the Applet to access media files on that server.
  • Applets can access other Applets on the same web page.
  • Applets can access other Applets on the page through the AppletContext object supplied by the web browser.
  • Swing (Richest GUI components in j2SE) has a broader GUI component set than AWT.
  • MIDP is a J2ME (not J2SE) profile.
  • JSF is a J2EE web-based UI component framework with only a limited component set.
  • AWT has a more limited GUI component set than Swing
  • SWT is NOT a standard J2SE technology.
  • JSP is used to create dynamic HTML content. It does NOT handle business logic.
  • JMS is the technology that handles asynchronous requests and performs the business logic of these requests.
  • JDBC is a database communication technology and does NOT handle business logic.
  • JNDI is a naming and directory service interface. It does NOT handle business logic.
  • JNDI and JDBC support completely independent purposes in an application. JNDI is an interface to directory servers and JDBC is an interface to database servers.
  • servlets and SQL support completely independent purposes in an application. Servlets respond to HTTP requests and SQL is used to communicate with relational databases.
  • JavaMail uses SMTP (simple mail transfer protocol), which is used to send email from an application to users.
  • JavaScript and EJB support completely independent purposes in an application. JavaScript provides interactivity to web pages and Enterprise JavaBeans provide business logic.
  • JSP technology simplifies the creation of dynamic web pages.
  • JSP technology is a server-side technology.
  • JSP technology is NOT intended to be used to create business components.
  • JSP technology is ideal for web designers who are NOT familiar with Java programming.
  • JSP technology is NOT an integration technology.
  • JSP is NOT an EJB technology
  • servlets are NOT an EJB technology
  • MDBs do NOT record client conversational state
  • stateful session beans are used to record client conversational state
  • stateless session beans do NOT record client conversational state
  • entity beans are used to represent persistent data.
  • message-driven beans handle asynchronous events.
  • Session beans only handle synchronous events.
  • session beans represent business processes and
  • stateless session beans are client-independent. That is, they do NOT store conversational state.
  • session beans do NOT exist in the web container
  • stateless session beans are used to represent client-independent business processes.
  • J2EE provides a rich and flexible programming model, but it is NOT simple
  • J2EE infrastructure provides rich concurrency support in both the web and EJB tiers, which supports highly scalable application development.
  • clustering is NOT directly supported by the J2EE specification. However, most vendor implementations of J2EE do support clustering.
  • J2EE provides declarative transaction management.
  • declarative transaction management is a required feature of the EJB container
  • declarative user interface construction – is NOT part of the J2EE specification.

4 Responses to “SCJA Tips”

  1. I wonder how did you manage to remember all that stuff 🙂

  2. 3 Iqbal

    Hi
    Any good reference to a free online Book to prepare.


  1. 1 SCJA Certified ! « Gökhan Dogan - ICT Entrepreneur

Leave a comment