This is the official repository for the course Object-Oriented Programming BCSC0002 for GLA University 2019

dbc2201 dbc2201 Last update: Feb 04, 2022

GLA University, 2019

Object-Oriented Programming (BCSC0002)

with Object-Oriented Programming Lab (BCSC0801)

This repository will store all the content relevant to this subject course.


Syllabus

  1. Module 1
  • Object-Oriented Programming Features: Abstraction, Encapsulation, Inheritance and Polymorphism, Procedural Paradigm vs Object-Oriented Paradigm, Advantages of using Object-Oriented Paradigm, Classes, Objects, Code-Reusability and data hiding.
  • Introduction to Java Programming Language: JDK, JRE, JVM, Java's Program Structure, Java's Class Library, Java Tokens and Scope of variables in Java.
  • Introduction to OOP with Python Programming Language.
  • Implementing Object-Oriented Programming using Java: Defining Classes and Methods, Creating objects of a Class, Introduction to Access Modifiers in Java.
  • Constructors in Java: Introduction to Constructors, Uses, Declaration, Differences between a Method and a Constructor, Types of Constructors, Constructors and Inheritance.
  • Inheritance in Java: Types of Inheritance in Java, Types of Relationships (Is-a, Has-a), Implementing Inheritance in Java, Revisiting Access Modifiers, Super and Final keywords.
  • Abstract Classes and Interfaces in Java: Abstract Classes in Java, Defining an Interface in Java, Uses of Interfaces, Interfaces vs Abstract Classes.
  • Packages: Understanding Packages, Defining a CLASSPATH.
  • Polymorphism: Introduction, Overloading, Overriding and types of Polymorphism.
  • Exception Handling: Exception and Errors, Types of Errors and Exceptions in Java, Exception Hierarchy, Key Terms (Try, Catch, Finally, Throw and Throws) and Custom Exception.

Prescribed Books


Assignments

  • Assignment 2
  1. Click on the link for your section and select your name.
    Section A
    Section E
    Section F
    Section M
  2. Click on accept assignment.

Weekly Quizzes



List of tools


  1. Open JDK (Suggested: OpenJDK, version 11 or higher), Oracle Java JDK |
  1. Python 3.7 or higher
  2. Git 2.22.0 or higher
  3. GitHub Account
  4. JetBrains ToolBox App

Video Links

  1. Object-oriented Programming in 7 minutes | Mosh
  2. Floating Point Numbers | Computerphile
  3. JDK, JRE, JVM: What Are They and What Are Their Differences? | The Learn Programming Channel
  4. Do Software Developers Need Communication Skills? | Programming Tip of the Day - Tim Buchalka

Repository Author: Divyansh Bhardwaj, Technical Trainer, GLAU

Subscribe to our newsletter