Saturday, January 31, 2009

SCJP Guidelines for the Students-I



SCJP
1.6 Certification Guidelines for the Students












Contents









  1. Introduction


  2. Exam
    Vouchers


  3. Examination
    Details


  4. Exam
    Syllabus


  5. Certification
    Kit


  6. Useful
    Resources




  • Recommended
    Books


  • For
    Reference


  • For
    Mock


  • For
    Downloads




  1. Prometric
    Testing Centers


  2. Tips
    to crack the Certification Examination



























































































Sun
Certified Programmer for the Java Platform, Standard Edition 6
(CX-310-065)





1.
Introduction & Importance of being certified


SCJP
exam is the foundation level Java exam and is a prerequisite to a
number of other Java-related certifications. Certification exams
prove your credibility & expertise on the Sun Java products and
technologies. Candidates who highlight these certification
credentials in their CVs’ draw the immediate attention by the
employers and are placed on top of their priority list. These
credentials help in getting recognition by the industries and are
easily aimed in getting paid more and preferred for promotions than a
non-certified candidate.





2.
Getting the Exam Vouchers


Sun
releases examination vouchers to the Authorized Prometric Testing
Centers spread wide across the country. Once exam vouchers are
purchased you have up to one year from the date of purchase to use
it. Each voucher is valid for one exam and may only be used at an
Authorized Prometric Testing Center in the country for which it was
purchased. Please be aware that exam vouchers are nonrefundable for
any reason.


If
vouchers are not available, do not panic, you can directly approach
to the Prometric Testing Centers at your nearest to register &
book the slots before 3 days from the date of the exam that you wish
to appear. The Prometric Testing center asks for 2 photo identity
proofs in order to sit & write the exam apart from the
examination fee.





3.
Examination Details





Delivered
at:
Authorized Worldwide Prometric Testing Centers


Prerequisites:
None


Other
exams/Assignments required for this certification
: None


Exam
type:
Multiple choice and drag and drop


Exam
Price:
7200/- in India


Number
of questions:
72


Pass
score:
65% (47 of 72 questions)


Time
limit:
210 minutes





4.
Exam Syllabus





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.


  • Develop
    code that declares both static and non-static methods, and - if
    appropriate - use method names that adhere to the JavaBeans naming
    standards. Also develop code that declares and uses a
    variable-length argument list.


  • 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.


  • Develop
    code that serializes and/or de-serializes objects using the
    following APIs from java.io: DataInputStream, DataOutputStream,
    FileInputStream, FileOutputStream, ObjectInputStream,
    ObjectOutputStream and Serializable.


  • 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.


  • Given
    a scenario, write code that makes appropriate use of wait, notify,
    or notifyAll.






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.






5.
What are the Credentials that Sun offers when you are certified?


Sun
sends us a package [through post] containing the Certificate, badge
and the logo enabling ur credibility as a Sun Certified Java
Programmer in 30 days since the certification exam taken.


Infact,
certificates are mailed from one week after the exam is completed.
Once certified, candidates may request the use of the logo that fits
their certification.





5.1
What will the successful candidate receive in their certification
kit?


All
certification kits include the following:



  • A
    Sun certified certificate with the candidate's name and
    certification title.


  • An
    ID card with the candidate's name and certification title.


  • A
    Logo Agreement form for successful Java technology certification
    candidates.


  • A
    lapel pin.






6.
Useful Resources






  • Recommended
    Books:




Presently,
the market offers SCJP 5.0 study guides which are as follows:



  • SCJP
    Sun Certified Programmer for Java 5: Exam (310-055) by Kathy Sierra
    (Author)


  • SCJP
    Sun Certified Programmer for Java 5 Study Guide by Sierra and Bert
    Bates








  • For
    Reference:




http://www.freejavaguide.com/



http://www.leepoint.net/notes-java/index.html



http://www.javaprepare.com/notes/intro.html



http://www.akgupta.com/Java/notes.htm





  • For
    Mock:




http://www.whizlabs.com/



http://www.roseindia.net/javacertification/scjp5/



http://www.javabeat.net/javabeat/scjp2/mocks/scjp_1_4_mock_exam_questions_2.php



http://rapidshare.com/users/N0D2VD



http://www.javacertificationexams.com/scjp-mock-exams.php



http://java.boot.by/scjp-tiger/index.html






  • For
    Downloads:




http://www.4shared.com



http://www.esnips.com/web/sunilwagh2008SCJP5


7.
Prometric Testing Centers


The
following are the Prometric testing centers in Chennai, Hyderabad &
Visakhapatnam:



































































































S.No



Testing
Center Name



Address
of the Testing Center



Locations
in Visakhapatnam



1



SREENIDHI
INFOTECH



Phone:
6642699 Site Code: IIH30 2nd Floor


Varanasi
Majestic Complex 2nd Lane, Dwarkanagar


Opp.
Pizza Hut



2



CALIBER
TECHNOCRATS



Phone:
6648412/6649300 Site Code: IIH41 DOOR NO 49-24-51/A/8 SRI PAVAV
ESTATES FLAT NO 103 SHANKAR MUTT ROAD



3



Krishna
Infotech



Phone:
6662071 Site Code: II461 IIHT, IIHT House, 48 - 8 - 1 Chaitanya
College Road Dwarkanagar



Locations
in Chennai



1



NIIT
Ltd.



Chennai
, Tamil Nadu 600040


Phone:
42612473 Site Code: IIN22 NO.6 AC Block,3rd Floor, 2nd Avenue Anna
Nagar West



2.



EveronnSystems
India Limited



Phone:
45513224 Site Code: IIJ2M No. 82


4th
Avenue Ashok Nagar



3



SSI
EDUCATION -T.NAGAR-



Phone:
28341289 Site Code: IIO5 ASWINI SWATHI APTS.#24, THIRUMALAI
PILLAI ROAD T.NAGAR



4



IIHT-CHENNAI-(FRANCHISEE)



Phone:
42033480/81/82 Site Code: IIH1 2ND FLOOR, MATRUKRUPA BUILDING
AC-5,2ND AVENUE,


ANNANAGAR



5



Software
Technology Group International Limited



Phone:
28297676 Site Code: II476 G3,709-710 Prince Center Anna Salai



6



Aptech
Computer Education



Chennai,
Tamil Nadu 600086


Phone:
28112638 Site Code: IIO17 64, Cathedral Road


Gopalapuram



Locations
in Hyderabad



1



PROMETRIC
TESTING (P) LTD



Phone:
23308504 Site Code: II001 AVENUE 1 STREET 20, ABOVE SBI PLOT 1672
ROAD 12 BANJARA HILLS



2



NIIT
Ltd.



Phone:
66622249 Site Code: IIC 2nd Floor


Prashanti
Complex Opp. to Old Gandhi Medical College


Basheerbagh



3



NIIT
Ltd.-Ameerpet



Phone:
66747792 Site Code: IIN36 4th Floor


Pavan
Vanijya Vihar Beside R.S Brothers Above Srikrishna Sweets



4



SSI
EDUCATIONS-DILSUKHNAGAR



Phone:
40031933 Site Code: IIO13 #405


My
Home Lakshmi Nivas Opp.. Dr. Reddys Lab


Green
Lands-Begumpet



5



KARROX
TECHNOLOGIES LTD



Phone:
66625561 Site Code: II449 6-3-788/A/10


Opp.
Lane Chandana Bros Durganagar Colony Ameerpet



6



HCL
Infosystems Limited



Phone:
27890520 Site Code: II582 503-504,5th Floor


Minerva
Complex S D Road Near Park Lane


















8.
Tips to crack the Certification Examination






  • If
    you buy a certification book (recommended), be prepared to read your
    chosen study book 1 - 2 times completely.


  • Read,
    practice, sit practice exams and discuss with friends / colleagues
    over and over again.


  • As
    you progress through your study guides & start practicing your
    mock papers, you will begin to get a ‘feeling’ for what
    the question is asking.


  • Try
    to get a group together to study with; it makes your preparation
    easier.


  • It
    would be helpful to solve Drag and Drop questions on a sheet of
    paper before actually attempting them in the test.


  • Fix
    the time limit with respect to the duration of the exam and practice
    the mock papers accordingly, which helps in improving your scores in
    the fixed limit of 210 minutes. Slowly, you will find resolving the
    questions in a shorter time span hence, gaining more time to revise
    the resolved questions.







To
succeed in your mission, you must have single-minded devotion to your
goal’.



-
Dr. A.P.J Abdul Kalam



















Try
to hit 100 out of 100. Many of our students passed SCJP & SCJD
with 100/100.



Atleast
ensure that you are getting minimum 90% score.

















Wishing
You the Best!





Knowledge
Division,


Nimai
Krsna Computers








For
further details contact:
nkstudents@gmail.com
or



sreedharkosaraju@hotmail.com

















2 comments:

K Amit said...

NIce Blog.....
very helpful to SCJP hunters....

Anonymous said...

Excellent Work.
Very Helpful...