Skip to content
VUBuddy

CS304 Handouts by VUBuddy

Object Oriented Programming PDF 2.8 MBUpdated 23 Oct 2026
Handout CS304 Handouts by VUBuddy PDF 2.8 MB
vubuddy.com
Type
Handout
Course
CS304 Object Oriented Programming
Size
PDF 2.8 MB
Updated
23 Oct 2026
Free download 0 of 3 used today
Download free · 2.8 MB

You get 3 free files a day on the website. Add the Chrome extension for 30 a day.

Unlimited downloads in the Android app Get it free on Google Play

Preview text

Text from pages 2, 3, 4 of 349. Download the file for all 349 pages.

  1. 1.
  2. 2. WHAT IS A MODEL?...........................................................................................................10
  3. 3. OO MODELS: .....................................................................................................................11
  4. 4. OBJECT-ORIENTATION - ADVANTAGES...........................................................................12
  5. 5. WHAT IS AN OBJECT? ........................................................................................................12
  6. 6. TANGIBLE AND INTANGIBLE OBJECTS.............................................................................12
  7. 7. SUMMARY:..........................................................................................................................13
  8. 1. INFORMATION HIDING: ....................................................................................................15
  9. 2. ENCAPSULATION................................................................................................................16
  10. 3. INTERFACE ..........................................................................................................................17
  11. 4. IMPLEMENTATION .............................................................................................................18
  12. 5. SEPARATION OF INTERFACE & IMPLEMENTATION .........................................................19
  13. 6. MESSAGES ..........................................................................................................................19
  14. 7. SUMMARY...........................................................................................................................19
  15. 1. ABSTRACTION ....................................................................................................................21
  16. 2. CLASSES..............................................................................................................................23
  17. 3.
  18. 1. CONCEPTS RELATED WITH INHERITANCE .......................................................................29
  19. 2. GENERALIZATION..............................................................................................................29
  20. 3. SUB-TYPING (EXTENSION).................................................................................................31
  21. 4.
  22. 5. OVERRIDING ......................................................................................................................34
  23. 6.
  24. 7.
  25. 3. SIMPLE ASSOCIATION .......................................................................................................49
  26. 4.
  27. 5.
  28. 1. CLASS COMPATIBILITY......................................................................................................55
  29. 2.
  30. 3. POLYMORPHISM IN OO MODEL.......................................................................................56
  31. 4. POLYMORPHISM – ADVANTAGES.....................................................................................57
  32. 5. OBJECT-ORIENTED MODELING AN EXAMPLE...................................................................58
  33. 1. CLASS..................................................................................................................................65
  34. 2. TYPE IN C++ .......................................................................................................................65
  35. 3. ABSTRACTION ....................................................................................................................66
  36. 4. DEFINING A NEW USER DEFINED TYPE ...........................................................................66
  37. 5. OBJECT AND CLASS: ..........................................................................................................68
  38. 6. ACCESSING MEMBERS........................................................................................................68
  39. 7. ACCESS SPECIFIERS ............................................................................................................69
  40. 1. MEMBER FUNCTIONS ........................................................................................................71
  41. 2. DEFINING MEMBER FUNCTIONS ...................................................................................... 71
  42. 3. INLINE FUNCTIONS............................................................................................................ 72
  43. 4. CONSTRUCTOR .................................................................................................................. 74
  44. 5. CONSTRUCTOR PROPERTIES............................................................................................. 74
  45. 6. DEFAULT CONSTRUCTOR ................................................................................................. 75
  46. 7. CONSTRUCTOR OVERLOADING ....................................................................................... 75
  47. 8. CONSTRUCTOR OVERLOADING ....................................................................................... 77
  48. 9. COPY CONSTRUCTOR ........................................................................................................ 78
  49. 10. SHALLOW COPY ............................................................................................................ 79
  50. 11. DEEP COPY .................................................................................................................... 81
  51. 1. SHALLOW COPY ................................................................................................................. 84
  52. 2. DEEP COPY ......................................................................................................................... 89
  53. 3. IMPORTANT POINTS ABOUT COPY CONSTRUCTOR: ........................................................ 91
  54. 4. DESTRUCTOR ..................................................................................................................... 92
  55. 5. ACCESSOR FUNCTIONS ..................................................................................................... 93
  56. 6. THIS POINTER ..................................................................................................................... 94
  57. 1. USES OF THIS POINTER...................................................................................................... 97
  58. 2. SEPARATION OF INTERFACE AND IMPLEMENTATION ..................................................... 97
  59. 3. COMPLEX NUMBER ............................................................................................................ 97
  60. 4. CONST MEMBER FUNCTIONS.......................................................................................... 100
  61. 5. THIS POINTER AND CONST MEMBER FUNCTION .......................................................... 102
  62. 1. USAGE EXAMPLE OF CONSTANT MEMBER FUNCTIONS................................................. 103
  63. 2. DIFFERENCE BETWEEN INITIALIZATION AND ASSIGNMENT:....................................... 104
  64. 3. MEMBER INITIALIZER LIST ............................................................................................. 104
  65. 4. CONST OBJECTS ............................................................................................................... 105
  66. 5. STATIC VARIABLES.......................................................................................................... 107
  67. 1. ACCESSING STATIC DATA MEMBER.............................................................................. 111
  68. 2. LIFE OF STATIC DATA MEMBER ..................................................................................... 111
  69. 3. STATIC MEMBER FUNCTION........................................................................................... 113
  70. 4. THIS POINTER AND STATIC MEMBER FUNCTIONS ......................................................... 114
  71. 5. GLOBAL VARIABLE VS. STATIC MEMBERS .................................................................... 114
  72. 6. ARRAY OF OBJECTS ......................................................................................................... 114
  73. 1. POINTER TO OBJECTS ...................................................................................................... 116
  74. 2. BREAKUP OF NEW OPERATION ....................................................................................... 117
  75. 3. CASE STUDY ..................................................................................................................... 117
  76. 1.
  77. 1.
  78. 2. FRIEND FUNCTIONS......................................................................................................... 135
  79. 1. OPERATOR OVERLOADING ............................................................................................. 138
  80. 1. OVERLOADING ASSIGNMENT OPERATOR .....................................................................147
  81. 1. SELF ASSIGNMENT PROBLEM: .........................................................................................151
  82. 2. OTHER BINARY OPERATORS ...........................................................................................152
  83. 3. FRIEND FUNCTIONS AND OPERATOR OVERLOADING ..................................................153
  84. 1. STREAM INSERTION OPERATOR......................................................................................154
  85. 2. STREAM EXTRACTION OPERATOR ..................................................................................154
  86. 3. OVERLOADING STREAM INSERTION OPERATOR ..........................................................155
  87. 4. OVERLOADING STREAM EXTRACTION OPERATOR:......................................................156
  88. 5. OTHER BINARY OPERATORS: ..........................................................................................157
  89. 1. SUBSCRIPT [] OPERATOR .................................................................................................160
  90. 2. OVERLOADING SUBSCRIPT [] OPERATOR ......................................................................160
  91. 3. OVERLOADING FUNCTION () OPERATOR .......................................................................161
  92. 4. FUNCTION OPERATOR PERFORMING SUB STRING OPERATION, ..................................161
  93. 5. UNARY OPERATORS.........................................................................................................162
  94. 1. BEHAVIOR OF ++ AND -- FOR PRE-DEFINED TYPES: .......................................................164
  95. 2. POST-INCREMENT OPERATOR: ........................................................................................165
  96. 3. TYPE CONVERSION ..........................................................................................................166
  97. 4.
  98. 5. DRAWBACKS OF TYPE CONVERSION OPERATOR: .........................................................170
  99. 1. PRACTICAL IMPLEMENTATION OF INHERITANCE IN C++ .............................................171
  100. 2. INHERITANCE IN CLASSES...............................................................................................171
  101. 3. UML NOTATION .............................................................................................................171
  102. 4. INHERITANCE IN C++ ......................................................................................................171
  103. 5. “IS A” RELATIONSHIP.....................................................................................................172
  104. 1. ACCESSING BASE CLASS MEMBER FUNCTIONS IN DERIVED CLASS: .............................179
  105. 2. “PROTECTED” ACCESS SPECIFIER: ...................................................................................181
  106. 3. “IS A” RELATIONSHIP.....................................................................................................182
  107. 4. STATIC TYPE.....................................................................................................................185
  108. 1. MODIFIED DEFAULT CONSTRUCTOR.............................................................................195
  109. 1. OVERLOADING VS. OVERRIDING ...................................................................................203
  110. 2. HIERARCHY OF INHERITANCE.........................................................................................207
  111. 1. BASE INITIALIZATION .......................................................................................................209
  112. 2. TYPES OF INHERITANCE...................................................................................................210
  113. 3. PRIVATE INHERITANCE ...................................................................................................212
  114. 1.
  115. 2. PROTECTED INHERITANCE ..............................................................................................218
  116. 3. PROPERTIES OF PROTECTED INHERITANCE ...................................................................219
All CS304 files →
CS304 Object Oriented Programming All CS304 handouts, past papers, quizzes and MCQs in one place. Open course page

Get more out of VUBuddy, for free

Android app Free on Google Play
  • Unlimited downloads
  • The explanation behind every MCQ answer
  • Study offline on slow data
Get the Android app
Chrome extension Free on the Chrome Web Store
  • 30 downloads a day instead of 3
  • Sign in and buy Pro Semester here
Add to Chrome

One Pro Semester membership works in both the extension and the app.