Object Oriented Programming CS04 LTPC: 4-0-4-6 Instructor: Gauravkumarsingh Gaharwar Program: Bachelor of Computer Applications Class-Semester: FYBCA(Sem-II) Email: gauravsinghg@nuv.ac.in Phone Number: 06-0000(0) Class Hours: Office Hours: Prerequisites: None Implementation inheritance causes the same intertwining and brittleness that have been observed when goto statements are overused. As a result, OO systems often suffer from complexity and lack of reuse. John Ousterhout Scripting, IEEE Computer, March 998 The problem with object-oriented languages is they ve got all this implicit environment that they carry around with them. You wanted a banana but what you got was a gorilla holding the banana and the entire jungle. Joe Armstrong Course Description The course is one of the foundation courses for object oriented programming. The course will cover fundamentals of java programming. Course aims at improving fundamentals by covering areas of data types, variable, operator, decision & iterative constructs, class, object, exception handling, threads, file handling, Enumerations, Autoboxing, Standardization & Internationalization, and Generic classes. As fundamental course in object oriented programming, this course is extremely important domain for the students of computer applications.
Course objectives To introduce object oriented concepts. To introduce object oriented programming through java language. To introduce fundamental of java programming language like data structure, operators, variable, decision structures, looping structures, etc. Instructional Methods Methods for teaching the course include: Lectures and in-class discussions Practicals (LAB sessions) Re-search based Presentations Theory and Practical Assignments Hands on Activities that involves students to apply learning Student Responsibilities:. Maintain silence in class. Don t distract or harass others. Participate in class discussions 4. Turn in and do well in Assignments/Homework. Demonstrate in class presentation/discussions 6. Pass in Midterm and Final exam 7. Arrive to class on time 8. Maintain 80% attendance (minimum) 9. No plagiarism at all 0. Come prepared to class Learning outcomes Upon completion of the course students are expected to: Understand concepts of object oriented programming. Understand basics of java programming language. Understanding about control and looping structures. Understating usage of classes and objects. Attendance: Mandatory. 80% attendance is needed to pass the course. Evaluation criteria Students will be evaluated on the following: Quizzes/Practical Tests : 0% Assignments/Practical Work: 0% Academic Contribution: 0% Mid-Sem Exam: 0% End-Sem Exam: 40% Extra Credit Extra credit means, extra marks for extra work. Students can earn up to % of total 00% marks in a course by: Attending lectures/talks, conferences, seminars, workshops;
Entering in competitions; Doing extra projects; Getting involved in community projects approved the university. Grading Students total marks out of 00 will be converted into a grade after completion of all activities at the end of the semester. Each student will get a final grade for the subject which will be any one from the grades mentioned below. Grade Total Marks AA >9 AB 86-9 BB 76-8 BC 66-7 CC 6-6 CD 46- DD 40-4 F < 40 Submissions Assignment Second week of February Assignment Second week of April Course schedule (Daily teaching topics) Unit Unit : Sr. No. 4 Name of Topics Java s Lineage: C & C++, Java s Magic: The Byte code, Java Buzzwords: Simple, Object-Oriented, Robust, Multithreaded Architecture-Neutral, Interpreted and High Performance, Distributed, Dynamic. Object-Oriented Programming: Two Paradigms, Abstraction, Three OOP Principles. First Java Program: Entering the Program, Compiling the Program. Lexical Issues: Whitespace, Identifiers, Literals, Comments, Separators, the Java Keywords. The Primitive Types: Integers-byte, short, int, long, Floating- Point Types-float, double, Characters, Booleans. Literals: Floating-Point Literals, Boolean Literals, Character Literals, String Literals. Variables: Declaring a Variable, Dynamic Initialization, Scope and Lifetime of Variables, Type Conversion and Casting, Automatic Type Promotion in Expressions, Type Promotion Rules. Nos. of Lect.
Unit : Unit : 6 Arrays: One-Dimensional Arrays, Multidimensional Arrays, Alternative Array Declaration Syntax. Operators: Arithmetic Operators, Bitwise Operators, Relational Operators, Boolean Logical Operators, the Assignment Operator, Ternary Operator, Operator Precedence. 7 Selection Statements: If, switch. 8 9 0 Iteration Statements: while, do-while, for, For-Each Version of the for Loop Jump Statements: break, continue, and return. Total Lectures of Unit : 4 Class Fundamentals, Declaring Objects, Assigning Object Reference Variables Introducing Methods, this Keyword, Garbage Collection, The finalize( ) Method. Overloading Methods and Constructors 4 6 7 8 9 Introducing Access Control, Understanding static, Introducing final, Introducing Nested and Inner Classes String Class, Using Command-Line Arguments, Varargs- Variable- Length Arguments Inheritance Basics, Using super, Creating a Multilevel Hierarchy, When Constructors Are Called Method Overriding, Dynamic Method Dispatch, Using Abstract Classes, Using final with Inheritance, The Object Class. Packages: Defining a Package, Finding Packages and CLASSPATH, Access Protection, Importing Packages, Interfaces: Defining an Interface, Implementing Interfaces, Nested Interfaces, Applying Interfaces, Variables in interfaces. Total Lectures of Unit : 6 Exception-Handling Fundamentals, Exception Types, Uncaught Exceptions, Using try and catch, Multiple catch Clauses, Nested try Statements, throw, throws, finally, Java s Built-in Exceptions, The Java Thread Model, The Thread Class and the Runnable Interface, Creating a Thread: Implementing Runnable, Extending Thread, Creating Multiple Threads, Using isalive() and join(), Thread Priorities, Synchronization. The Java I/O Classes and Interfaces, File: Directories, Filename Filter, list Files( ) alternative, Creating Directories. The Stream Classes, The Byte Streams, Input Stream, Output Stream, FileInputStream, FileOutputStream, Filtered Byte Streams, Buffered Byte Streams, SequenceInputStream, Print Stream, DataOutputStream, DataInputStream, RandomAccessFile, The Character Streams: Reader, Writer, FileReader, FileWriter, BufferedReader, BufferedWriter,
Unit : 4 0 Pushback Reader, Print Writer, The Console Class, The StreamTokenizer, ObjectOutputStream, ObjectInputStream. Total Lectures of Unit : Enumerations: Enumeration Fundamentals, The values ( ) and valueof( ) Methods, Java Enumerations Are Class Types, Enumerations Inherit Enum, Type Wrappers. Autoboxing :Autoboxing and Methods, Autoboxing/ Unboxing Occurs in Expressions, Autoboxing/ Unboxing Boolean and Character Values, Autoboxing/ Unboxing Helps Prevent Errors. Annotations(Metadata): Annotation Basics, Specifying a Retention Policy, Obtaining Annotations at RunTime by Use of Reflection, The AnnotatedElement Interface, Using Default Values, MarkerAnnotations, Single-Member Annotations, The Built-In Annotations, Restrictions. Standardization & Internationalization in java. 4 What Are Generics?, A Simple Generics Example, A Generic Class with Two Type Parameters, The General Form of a Generic Class, Bounded Types, Using Wildcard Arguments, Creating a Generic Method, Generic Interfaces, Raw Types and Legacy Code, Generic Class Hierarchies, Erasure, Ambiguity Errors, Generic Restrictions. Total Lectures of Unit : 4 4 Total Lecture Required for entire syllabus : 60 Text Books:. Herbert Schildt, Java: The Complete Reference, Seventh Edition, Publication: TMH. Ken Arnold, James Gosling, David Holmes, The Java Programming Language Edition, Pearson (008) Reference Books:. Gary Cornell, Cay S. Horstmann, Core Java Fundamentals (Volume - ), 8 Edition, Pearson (008). Pravin Jain, The class of JAVA, Pearson Important Dates: Commencement of classes: 8 th January, 08. Mid-Semester Exams: th March, 08 to 7 th March 08. End-Semester Exams: 4 th May, 08 to 4 th May, 08. Attendance Policy. Attendance is mandatory though a minimum of 80% is required to be allowed to take the exam.. Those with over % will receive F in the course.. No re-examination is allowed for those with over % absent and they will need to repeat the course.
4. Course repeat will require a student to re-register for the course, pay fee for the course and attend all classes with other students for the entire duration of the semester.. Three late arrivals (0 minutes from the beginning of the class) or early departures (0 minutes before end of class) will constitute absent.