There is one written paper of two hours duration carrying 100 marks and Internal Assessment of 100 marks. The paper i divided into two sections: A and B.
Section A (Compulsory - 40 marks) consists of compulsory short answer questions covering the entire syllabus. Section B (60 marks) consists of questions which require detailed answers and there is choice of questions in this section.
(i) Elementary Concept of Objects and Classes.
(ii) Values and types.
(iii) Conditionals and non-nested loops.
Objects and Classes
Objects encapsulate state and behaviour – numerous examples; member variables; attributes or features. Variables define state; member functions; Operations/methods/ messages/ functions define behaviour.
Classes as abstractions for sets of objects; class as an object factory; concept of type, primitive data types, composite data types. Variable declarations for both types; difference between the two types. Objects as instances of a class.
Consider real life examples for explaining the concept of class and object.
Constructor and its types.
Default constructor, parameterized constructor, constructor with default parameter and constructor overloading.
Functions and its types
Need of functions. Types of functions (pure and impure). Function declaration and definition, ways of calling functions (call by value and call by reference) Returning information/messages from the functions and use of multiple functions and more than one function with the same name (function overloading). Use of static data member with static member function. Discuss invocation of functions on objects (through the reference). Discuss the concept of this with a reference to the object on which the invocation is made again.
Class as a composite type, distinction between primitive type and composite or class types.
Class may be considered as a new data type created by the user, that has its own functionality.
The distinction between primitive and composite types should be discussed through examples. Show how classes allow user defined types in programs. All primitive types have corresponding class wrappers.
The following methods are to be covered:
int parseInt(String s), int valueOf(String s), long parseLong(String s), long valueOf(String s), float parseFloat(String s), float valueOf(String s), double parseDouble(String s), double valueOf(String s), boolean isDigit(char ch), boolean isLetter(char ch), boolean isLetterOrDigit(char ch), boolean isLowerCase(char ch), boolean isUpperCase(char ch), boolean isWhitespace(char ch), char to LowerCase (char ch), char to UpperCase(char ch)
Loops, nested loops, break and continue.
Revision of loops (while, do while and for). Show how each kind of loop can be converted to the other form of the loop. Introduce nested loops through some simple examples. Demonstrate break and continue statements with the help of loops/nested loops.
Simple input/output. String, packages and import statements.
Browsing the documentation for classes in the libraries and illustrating their use. The following functions have to be covered:
String library functions:
Mathematical Library Functions:
pow(x,y), log(x), sqrt(x), ceil(x), floor(x), rint(x), abs(a), max(a, b), min(a,b), random( ), sin(x), cos(x), tan(x).
Introduce the concept of packages and import statement (Avoid discussing the details of libraries).
Access specifiers and scope and visibility
Access specifiers – private and public. Visibility rules for private, package and public access specifiers. Scope of variables, instance variables, argument variables, local variables.
Arrays – storing, retrieving and arranging data
Arrays and their uses, sorting algorithms - selection sort and bubble sort; Search algorithms – linear search and binary search Example of a composite type. Array creation. Sorting and searching algorithms should be discussed (single dimensional array only).
Basic input/output using Scanner and Printer classes from JDK.
The Scanner class can be used for input of various types of data (e.g. int, float, char etc.) from the standard input stream.