• Stars
    star
    137
  • Rank 260,948 (Top 6 %)
  • Language
  • Created over 3 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Links and resources for strengthening the concepts of Object Oriented Programming [Java and C++]

OOP Cheatsheet by Love Babbar

Links and resources for strengthening the concepts of Object Oriented Programming [Java and C++] To the point for Interview Preparation and sufficient for Academics.

Love Babbar CheatSheet : cheatsheet
Love Babbar Video : video

Useful Links

SNo Topic Link Language
1 Virtual Functions view C++
2 Polymorphism view C++

Resources

SNo Language Link
1 C++ view
2 Java view

Overview

SNo Topic Link Date Completed
1 What is OOP ? view not done
2 How OOP is related to real world ? view not done
3 Why to study OOPs ? view not done
4 Limitations of OOPs view not done
5 When we say that "X" language is object oriented programming language, then what does we mean by that ? homework not done

Classes

SNo Topic Link Date Completed
1 Difference between Structure and Class view not done
2 Similarities between Structure and Class view not done
3 When to use Structure over Class homework not done
4 Access Modifiers view not done
5 Member Function view not done
6 Constructor view not done
7 Destructor view not done

Access Specifiers

There are 4 access modifiers in C++ :

  • public
  • private
  • protected
  • friend
  • protected friend

Member functions

  • Inside Class Function --> inline keyword
  • Outside Class Function --> scope resolution operator (::)

Constructor

SNo Topic Link Date Completed
1 Default Constructor - not done
2 Parameterised Constructor - not done
3 Copy Constructor : Deep vs shallow copy view not done
4 Copy Constructor : copy ctor vs assignment view not done
5 Virtual Constructor view not done
6 Virtual Copy Constructor view not done
7 Constructor vs member functions view not done
8 Constructor Overloading view not done

Destructor

SNo Topic Link Date Completed
1 Private Destructor view not done
2 Virtual Destructor view not done
3 Pure Virtual Destructor view not done
4 Destructor vs member functions view not done
5 Multiple Destructors in one class ? view not done
6 When to write user defined Destructor ? view not done
7 Can a Destructor be virtual ? view not done

Objects

SNo Topic Link Date Completed
1 difference btw Class and Object view not done
2 Real world Analogy btw Class and Object view not done

Important Keywords

SNo Topic Link Date Completed
1 static view not done
2 virtual view not done
3 abstract view not done
4 final view not done
5 explicit view not done
6 this view not done
7 new view not done
8 const view not done
9 super view not done

Features of OOPs :

  • Polymorphism
  • Inheritance
  • Encapsulation
  • Abstraction

Polymorphism

SNo Topic Link Date Completed
1 What is Polymorphism ? view not done
2 Need of Polymorphism ? view not done
3 Function / Operator Overloading view not done
4 Function Overriding view not done
5 Virtual Function view not done
6 Virtual Class view not done
7 Derived Class view not done
8 Can Virtual Function be private ? view not done
9 Inline Virtual Function view not done
10 Abstract Class view not done
11 Pure Virtual Function view not done
12 Pure Virtual Destructor view not done

Polymorphism is categorised into 2 types :

  • Function / Operator Overloading
  • Function Overriding

Function / Operator Overloading

SNo Topic Link Date Completed
1 Compile time Polymorphism view not done
2 Functions cannot be overloaded in C++ view not done
3 Operators that cannot be overloaded in C++ view not done

Note : Function Overriding is also called run-time Polymorphism.

5 Types of Inheritance

  • Single
  • Mutliple
  • Hierarchical
  • Multilevel
  • Hybrid / Virtual

Inheritance

SNo Topic Link Date Completed
1 What is Inheritance ? view not done
2 Need of Inheritance view not done
3 Can OOP exist without Inheritance ? view not done
4 Types of Inheritance view not done
5 Real life examples of Multiple Inheritance view not done
6 Limitations of Inheritance view not done
7 Sealed Modifier view not done
8 Calling base method without creating instance view not done
9 new vs override view not done
10 Why JAVA doesn't support Multiple Inheritance view not done
11 Dreaded diamond in Multiple Inheritance view not done
12 Object Slicing view not done
13 Hide base class methods in JAVA view not done
14 Does overloading work with Inheritance view not done
15 Polymorphism vs Inheritance view not done
16 Generalization vs Aggregation vs Composition view not done
17 Friend Function / Class homework not done
18 Local Class, nested Class homework not done
19 Simulating Final Class homework not done

Note: If class A inherits from class B, then what all are inherited from parent class and size calculation. Explore all possible combinations

Encapsulation

SNo Topic Link Date Completed
1 What is Encapsulation ? view not done
2 Advantages of Encapsulation view not done
3 How to achieve Encapsulation view not done
4 Code / Implementation of Encapsulation view not done
5 Real world example of Encapsulation view not done

Encapsulation is the combination of Data hiding and Abstraction

Abstraction

SNo Topic Link Date Completed
1 What is Abstraction ? view not done
2 When to Abstraction ? homework not done
3 How to achieve Abstraction ? view not done
4 Encapsulation vs Abstraction view not done
5 Interface vs Abstract classes in JAVA view not done
Data abstraction is a way of hiding the implementation details and showing only the functionality to the users.

How to achieve : 
  1) C++  --> Access specifiers and header files
  2) JAVA --> Interfaces and Abstract classes

Design Interview Questions

SNo Topic Link Date Completed
1 Design a hashmap view not done
2 Design a LRU cache view not done
3 Design a Call Center view not done
4 Design a deck of cards view not done
5 Design a parking lot view not done
6 Design an online chat view not done

Miscellaneous

SNo Topic Link Date Completed
1 Static and Dynamic Binding view not done
2 Message Passing view not done
3 C vs C++ vs JAVA view not done
4 Procedural vs OOPs view not done
5 Why JAVA is not purely OOB view not done
6 Is array primitive or object in JAVA view not done
7 Early and late binding view not done
8 Default access modifier in class view not done
9 No. of instances for an abstract class view not done
10 Garbage Collection view not done
11 Manipulators view not done
12 Finally block view not done
13 Final Variable view not done
14 Exception view not done
15 Error vs Exception view not done
16 Exception Handling view not done
17 Finalize method in JAVA view not done
18 Tokens view not done
19 Ternary Operator view not done
20 Enum view not done
21 Design Patterns view not done
22 Using struct vs class view not done
23 Cohesion vs Coupling view not done
Is it possible for a class to inherit the constructor of its base class ? 
super keyword
order of constructor and destructor calling sequence in case of various inheritance schemes.
Singleton pattern example.

More Repositories

1

SDE_Sheet_Striver

C++ Solutions of 180 Questions [30 Days] of Strivers SDE Sheet , YouTube Channel TAKEUFORWARD (Raj Vikramaditya bhaiyaa)
C++
280
star
2

CPP

My Data Structures and Algorithms preparation for Placements.
C++
10
star
3

pepcoding_solutions

Pepcoding Level-1 and Level-2 Solutions in C++
C++
3
star
4

InfoGeeks

Search Query Information Stacker using High Performance Computing
Jupyter Notebook
3
star
5

vineethm1627

2
star
6

BinaryClassification_heroku

Deployment of The Streamlit application on heroku
Python
2
star
7

semantic_segmentation

deeplabv3+ model trained on pascal voc dataset for Semantic Image Segmentation using PixelLib
Jupyter Notebook
2
star
8

portfolio

Version 2 of Portfolio Website
HTML
2
star
9

SEM6_Labs

Semester 6 Labs: CPP, HPC and Cloud Computing
Jupyter Notebook
2
star
10

Computer_Vision

Repo for leadingindia mentorship
Jupyter Notebook
2
star
11

MVC-in-New-York-City

Deployment of streamlit application using heroku
Python
2
star
12

kmeans_segmentation

Image Segmentation using K-Means Clustering
Python
1
star
13

ECSE303L-AI-AND-ML

Lab Assignments for AI and ML Core Course Semester 5
Jupyter Notebook
1
star
14

tf_serving_flask_deploy

Tensorflow Serving | Flask | Model Deployment | Docker
Python
1
star
15

terminal

Terminal look a like Portfolio Website.
CSS
1
star
16

Anomaly-Detection

Anomaly Detection in Time Series Data using LSTM Autoencoders in Keras
Jupyter Notebook
1
star
17

ECSE440L-DEEP-LEARNING

Lab Assignments for Deep Learning Elective Course, Semester 5
Jupyter Notebook
1
star
18

Facial-Expression-Recognition

Facial Expression Recognition Classifier Model - Final Project for Technocolabs
Jupyter Notebook
1
star
19

CodeQuotient

CodeQuotient SuperCoders Program
C++
1
star
20

Forcous

Forcous : Estimating Unit Sales of Walmart Retail Goods
Jupyter Notebook
1
star
21

DCGAN-Fashion-MNIST

Generating synthetic images of Fashion MNIST data using Deep Convolutional Generative Adversarial Networks [DCGAN]
Jupyter Notebook
1
star
22

ML-DL-Deployment

Deployment of ML and DL Projects
Jupyter Notebook
1
star
23

5-Class-Classification

Final Project for Deep Learning Bootcamp [dphi.tech]
Jupyter Notebook
1
star
24

ADDITION-RNN

Simple Mathematical Addition Operation using Recurrent Neural Network
Jupyter Notebook
1
star
25

instance_segmentation

Mask R-CNN model trained on coco dataset for Instance Segmentation using PixelLib
Jupyter Notebook
1
star