Syllabus Object Oriented Programming with Java - (BC03001021) Total Credits L+T+(PR/2) Assessment Pattern and Marks Total Marks C Theory Tutorial / Practical ESE (E) PA / CA (M) PA / CA (I) ESE (V) 4 70 30 20 30 150 Unit No. Content 1. Introduction to Java 1.1 Basics of Java, Background / History of Java, Java and the Internet, Advantages of Java. 1.2 Java Virtual Machine & Byte Code. 1.3 Java Environment Setup. 1.4 Java Program Structure. 1.5 Procedure-Oriented vs. Object-Oriented Programming concept. 1.6 Basics of OOP : Abstraction, Inheritance, Encapsulation, Classes, subclasses and super classes, Polymorphism and Overloading, message communication. 1.7 Compiling and running a simple "Hello World" program : Setting Up Your Computer, Writing a Program, Compiling, Interpreting and Running the program, Common Errors. (Chapter - 1) 2. Building Blocks of the Language : 2.1 Primitive Data Types : Integers, Floating Point type, Characters, Booleans etc. 2.2 User Defined Data Type. 2.3 Identifiers & Literals. 2.4 Declarations of constants & variables. 2.5 Type Conversion and Casting. 2.6 Scope of variables & default values of variables declared. 2.7 Wrapper classes. 2.8 Comment Syntax. 2.9 Garbage Collection. 2.10 Arrays of Primitive Data Types. 2.11 Types of Arrays. 2.12 Creation, concatenation and conversion of a string, changing case of string, character extraction, String Comparison, String Buffer. 2.13 Different Operators : Arithmetic, Bitwise, Rational, Logical, Assignment, Conditional, Ternary, Increment and Decrement, Mathematical Functions. 2.14 Decision & Control Statements : Selection Statement (if, if...else, switch), Loops (while, do-while, for), Jump statements (break, continue, return & exit). (Chapter - 2) 3. Object Oriented Programming Concepts : 3.1 Defining classes, fields and methods, creating objects, accessing rules, this keyword, static keyword, method overloading, final keyword. 3.2 Constructors : Default constructors, Parameterized constructors, Copy constructors, Passing object as a parameter, constructor overloading. (Chapter - 3) 4. Inheritance, Packages & Interfaces : 4.1 Basics of Inheritance, Types of inheritance : single, multiple, multilevel, hierarchical and hybrid inheritance, concepts of method overriding, extending class, super class, subclass, dynamic method dispatch & Object class. 4.2 Creating package, importing package, access rules for packages, class hiding rules in a package. 4.3 Defining interface, inheritance on interfaces, implementing interface, multiple inheritance using interface. 4.4 Abstract class and final class. (Chapter - 4) 5. Exception Handling, Multithreaded programming and File Handling : 5.1 Types of errors, exceptions, try. Catch statement, multiple catch blocks, throw and throws keywords, finally clause, uses of exceptions, user defined exceptions. 5.2 Creating thread, extending Thread class, implementing Runnable interface, life cycle of a thread, Thread priority & thread synchronization, exception handing in threads. 5.3 Stream classes, class hierarchy, useful I/O classes, creation of text file, reading and writing text files. (Chapter - 5)