Summer 2021: Programming in Java
Contents
Logistics
- Class Timings: Tuesdays 10:45 am - 12:45 pm (3rd and 4th slot) & Fridays 8:45 am - 10:45 am (1st and 2nd slot)
- Classroom: Online
- Lab Timings: Wednesdays and Thursdays 10:45 am - 12:45 pm (3rd and 4thslot)
Course Overview
- As per the COURSE Guidelines
Lectures
Lecture | Topic | Lecture Slides | Readings |
---|---|---|---|
Lecture 01 (01/04/21, 06/04/21) | Introduction: History of Java, Java Features, First Sample Program, Java Virtual Machine(JVM) Architecture. | 1.pdf | Chapter 1 (R1) |
Lecture 02 (08/04/21) | OOPs Principles: Object, Class, Encapsulation, Abstraction, Inheritance, Polymorphism. | 2.pdf | Chapter 2 (R1) |
Lecture 03 (09/04/21, 13/04/21, 16/04/21, 20/04/21) | Data Types, Variables, Arrays, Operators, Control Statements: The Primitive Data Types(Integers, Floating-Point Types, Characters, Booleans). Variables and their scope and lifetime. Type Conversion and Casting. Arrays (One-dimensional Arrays, Multidimensional Arrays) declaration, initialization, and usage. Operators (Arithmetic, Increment and Decrement, The Bitwise Operators, Compound Assignments, Relational Operators, Ternary Operator, Operator Precedence). Control Statemetns (Selection Statemetns-if, switch, Interation Statements - for, while, and do-while. The Enchanced For Loop (For-Each Loop). Jump Statements (break, continue, return). | 3.pdf | Chapter 3,4,5 (R1) |
Lecture 04 (22/04/21, 27/04/21) | Introducing Classes: Class Fundamentals, Declaring Objects, Introducing Methods, Constructors(Default, No-argument, Parameterized), The this keyword, Garbage Collection, The finalize( ) Method. | 4.pdf | Chapter 6 (R1) |
Test 1 (04/05/21) | Syllabus: Chapter 1 - Chapter 6, of the Referenc Book, as per the course guidelines. | ||
Online Teaching suspended from May 4, 2021(afternoon) - May 16, 2021. | |||
Lecture 05 (18/05/21, 19/05/21, 28/05/21) | A Closer Look at Methods and Classes: The Primitive Data Types(Integers, Floating-Point Types, Characters, Booleans). Variables and their scope and lifetime. Type Conversion and Casting. Arrays (One-dimensional Arrays, Multidimensional Arrays) declaration, initialization, and usage. Operators (Arithmetic, Increment and Decrement, The Bitwise Operators, Compound Assignments, Relational Operators, Ternary Operator, Operator Precedence). Control Statemetns (Selection Statemetns-if, switch, Interation Statements - for, while, and do-while. The Enchanced For Loop (For-Each Loop). Jump Statements (break, continue, return). | 3.pdf | Chapter 7 (R1) |
Assignments and Tests
Home Assignments
- Home Assignment (HA) No. 1, Difference between JDK, JRE, and JVM. [06/04/2021]
- Home Assignment (HA) No. 2(a), Difference between Procedure Oriented Programming(POPs) and Object Oriented Programming(OOPs). [08/04/2021]
- Home Assignment (HA) No. 2(b), Write some real life examples (pictorial representation) of OOPs. [08/04/2021]
- Home Assignment (HA) No. 3(a), WAP to read n elements in an array and finally print them. [16/04/2021]
- Home Assignment (HA) No. 3(b), WAP to calculate the sum and average of elements in the array. [16/04/2021]
- Home Assignment (HA) No. 3(c), WAP to find the largest and smallest element in the array. [16/04/2021]
- Home Assignment (HA) No. 3(d), WAP to find/search an element in the array(using linear search). [16/04/2021]
- Home Assignment (HA) No. 3(e), WAP to sort the elements of an array(using bubble sort). [16/04/2021]
- Home Assignment (HA) No. 4(a), WAP to print the prime numbers form given input m to n. [20/04/2021]
- Home Assignment (HA) No. 4(b), WAP to generate the Fibonacci Series upto a given limit. [20/04/2021]
- Home Assignment (HA) No. 5, WAP to create a Student class consisting of rollNo, name, course, and subjects as its instance variables. Demostrate in how many different ways you can initialize the objects of Student class. Finally display the objects (for example: stu1 data, stu2, etc.) as output of the program. [22/04/2021]
- Home Assignment (HA) No. 6, WAP to demonstrate the use of garbage collector in Java [27/04/2021]
Class Assignments
- Assignment No. 1, Posted on Google Classroom, Submission Deadline: 20/05/2021
- Assignment No. 2, Posted on Google Classroom, Submission Deadline: **/**/2021
- Assignment No. 3, Posted on Google Classroom, Submission Deadline: **/**/2021
Tests
- Test 1, will be held on 04/05/2021. The Syllabus for Test 1 will be upto Chapter 6 + Class Assignment no. 1.
- Test 2, **/**/2021.
- Test 3, **/**/2021.
Resources
- R1: Schildt, H. (2018). Java: The Complete Reference. 10th edition. McGraw-Hill Education.
- Additional R1: Balaguruswamy, E. (2014). Programming with JAVA: A Primer. 5th edition. India: McGraw Hill Education.
- Additional R2: Horstmann, C. S. (2017). Core Java - Vol. I – Fundamentals (Vol. 10). Pearson Education.
- Additional R3: Schildt, H., & Skrien, D. (2012). Java Fundamentals - A Comprehensive Introduction. India: McGraw Hill Education.
- Web 1: The Java™ Tutorials [1]
- Web 2: Java T Point Tutorial [2]
- Web 3: NTU notes on Java [3]
Course Running Status
Unit/Chapter | Topic | Status | Remarks |
---|---|---|---|
1 | The History and Evolution of Java | Completed | 06/04/2021 |
2 | An Overview of Java | Completed | 08/04/2021 |
3 | Data Types, Variables and Arrays | Completed | 13/04/2021 |
4 | Operators | Completed | 16/04/2021 |
5 | Control Statements | Completed | 20/04/2021 |
6 | Introducing Classes | Completed | 27/04/2021 |
7 | A Closer Look at Methods and Classes | Completed | 28/05/2021 |