SlideShare a Scribd company logo
Rushdi Shams, Dept of CSE, KUET
Database SystemsDatabase Systems
Object Oriented DatabaseObject Oriented Database
Management SystemsManagement Systems
Version 1.0Version 1.0
Rushdi Shams, Dept of CSE, KUET
Object- TheoryObject- Theory
 An object is a package of data and procedures.An object is a package of data and procedures.
 Data is contained in attributes of an objectData is contained in attributes of an object
 Procedures are defined in methods of an objectProcedures are defined in methods of an object
Rushdi Shams, Dept of CSE, KUET
Object- TheoryObject- Theory
Concept of ClassConcept of Class
Rushdi Shams, Dept of CSE, KUET
Objects- TheoryObjects- Theory
Concepts of ObjectsConcepts of Objects
Rushdi Shams, Dept of CSE, KUET
Object Types in OracleObject Types in Oracle
Concept of ClassConcept of Class
Rushdi Shams, Dept of CSE, KUET
Objects in OracleObjects in Oracle
 When you create a variable of an object type,When you create a variable of an object type,
you create an instance of the type and the resultyou create an instance of the type and the result
is an objectis an object
 An object has the attributes and methodsAn object has the attributes and methods
defined for its typedefined for its type
 an object instance is a concrete thing, you canan object instance is a concrete thing, you can
assign values to its attributes and call itsassign values to its attributes and call its
methodsmethods
Rushdi Shams, Dept of CSE, KUET
Objects in OracleObjects in Oracle
rushdirushdi person_typ;person_typ;
will create an object named rushdi of typewill create an object named rushdi of type
person_typ.person_typ.
Rushdi Shams, Dept of CSE, KUET
Question at the stageQuestion at the stage
 How the property ENCAPSULATION reflectsHow the property ENCAPSULATION reflects
in OODM?in OODM?
 What is the difference between object type andWhat is the difference between object type and
object in Oracle?object in Oracle?
 What is the relation between Oracle’s objectWhat is the relation between Oracle’s object
type and OOP’s class?type and OOP’s class?
Rushdi Shams, Dept of CSE, KUET
Object Type is a Data Type!Object Type is a Data Type!
 Defining an object type does not allocate anyDefining an object type does not allocate any
storagestorage
 After they are defined, object types can be usedAfter they are defined, object types can be used
in SQL statements in most of the same placesin SQL statements in most of the same places
you can use types like NUMBER oryou can use types like NUMBER or
VARCHAR2VARCHAR2
Rushdi Shams, Dept of CSE, KUET
Object Type is a Data Type!Object Type is a Data Type!
Rushdi Shams, Dept of CSE, KUET
Question at the stageQuestion at the stage
 ““An object type is a data type”- justify theAn object type is a data type”- justify the
answer.answer.
Rushdi Shams, Dept of CSE, KUET
Object Methods in OracleObject Methods in Oracle
 Methods are functions or procedures that youMethods are functions or procedures that you
can declare in an object type definition tocan declare in an object type definition to
implement behavior that you want objects ofimplement behavior that you want objects of
that type to performthat type to perform
 The general kinds of methods that can beThe general kinds of methods that can be
declared in a type definition are:declared in a type definition are:
1.1. MemberMember
2.2. StaticStatic
3.3. ConstructorConstructor
Rushdi Shams, Dept of CSE, KUET
Member MethodsMember Methods
 Member methods are the means by which anMember methods are the means by which an
application gains access to an object instance's dataapplication gains access to an object instance's data
 You define a member method in the object type forYou define a member method in the object type for
each operation that you want an object of that type toeach operation that you want an object of that type to
be able to performbe able to perform
Rushdi Shams, Dept of CSE, KUET
Static MethodsStatic Methods
 Static methods are invoked on the object type,Static methods are invoked on the object type,
not its instancesnot its instances
 You use a static method for operations that areYou use a static method for operations that are
global to the type and do not need to referenceglobal to the type and do not need to reference
the data of a particular object instancethe data of a particular object instance
 A static method has no SELF parameterA static method has no SELF parameter
Rushdi Shams, Dept of CSE, KUET
Static MethodsStatic Methods
 You invoke a static method by using the dotYou invoke a static method by using the dot
notation to qualify the method call with thenotation to qualify the method call with the
name of the object type, such as:name of the object type, such as:
type_name.method()type_name.method()
Rushdi Shams, Dept of CSE, KUET
Constructor MethodsConstructor Methods
 Every object type has a constructor method implicitlyEvery object type has a constructor method implicitly
defined for it by the systemdefined for it by the system
 A constructor method is a function that returns a newA constructor method is a function that returns a new
instance of the user-defined type and sets up the valuesinstance of the user-defined type and sets up the values
of its attributesof its attributes
Rushdi Shams, Dept of CSE, KUET
Questions at the StageQuestions at the Stage
 What are the three methods that can be declaredWhat are the three methods that can be declared
in object type definition?in object type definition?
 What is the difference between static methodWhat is the difference between static method
and member method?and member method?
 What is the speciality about constructor method?What is the speciality about constructor method?
Rushdi Shams, Dept of CSE, KUET
Inheritance- TheoryInheritance- Theory
 A type hierarchy is a sort of family tree of objectA type hierarchy is a sort of family tree of object
typestypes
 It consists of a parent base type, called a superIt consists of a parent base type, called a super
typetype
 one or more levels of child object types, calledone or more levels of child object types, called
subtypessubtypes
 Child object types are derived from parentChild object types are derived from parent
object classobject class
Rushdi Shams, Dept of CSE, KUET
Inheritance- TheoryInheritance- Theory
 A subtype becomes a specialized version of theA subtype becomes a specialized version of the
parent type by adding new attributes andparent type by adding new attributes and
methods to the set inherited from the parent ormethods to the set inherited from the parent or
by redefining methods it inheritsby redefining methods it inherits
 Redefining an inherited methods gives a subtypeRedefining an inherited methods gives a subtype
its own way of executing the methodits own way of executing the method
Rushdi Shams, Dept of CSE, KUET
Inheritance- TheoryInheritance- Theory
Rushdi Shams, Dept of CSE, KUET
Inheritance- TheoryInheritance- Theory
Rushdi Shams, Dept of CSE, KUET
PolymorphismPolymorphism
 Add to this that an object instance of a subtypeAdd to this that an object instance of a subtype
can generally be substituted for an objectcan generally be substituted for an object
instance of any of its supertypes in code, andinstance of any of its supertypes in code, and
you have polymorphismyou have polymorphism
Rushdi Shams, Dept of CSE, KUET
Final & Not Final- TypesFinal & Not Final- Types
 The definition of an object type determines whetherThe definition of an object type determines whether
subtypes can be derived from that typesubtypes can be derived from that type
 To permit subtypes, the object type must be defined asTo permit subtypes, the object type must be defined as
not finalnot final
Rushdi Shams, Dept of CSE, KUET
Final & Not Final- TypesFinal & Not Final- Types
 By default, an object type is declared as final andBy default, an object type is declared as final and
subtypes cannot be derived from itsubtypes cannot be derived from it
 You can change a final type to a not final type and viceYou can change a final type to a not final type and vice
versa with an ALTER TYPE statementversa with an ALTER TYPE statement
 You can alter a type from NOT FINAL to FINALYou can alter a type from NOT FINAL to FINAL
only if the target type has no subtypesonly if the target type has no subtypes
Rushdi Shams, Dept of CSE, KUET
Final & Not Final- MethodsFinal & Not Final- Methods
 Methods can also be declared to be final or notMethods can also be declared to be final or not
finalfinal
 If a method is declared to be final, subtypesIf a method is declared to be final, subtypes
cannotcannot overrideoverride it by providing their ownit by providing their own
implementationimplementation
 Unlike types, methods are not final by defaultUnlike types, methods are not final by default
and must be explicitly declared to be finaland must be explicitly declared to be final
Rushdi Shams, Dept of CSE, KUET
Final & Not Final- MethodsFinal & Not Final- Methods
Rushdi Shams, Dept of CSE, KUET
Inheritance- OracleInheritance- Oracle
Creating SubtypeCreating Subtype
Rushdi Shams, Dept of CSE, KUET
Inheritance- OracleInheritance- Oracle
Creating Subtype of subtypeCreating Subtype of subtype
Rushdi Shams, Dept of CSE, KUET
Questions at the StageQuestions at the Stage
 What are the mechanisms Oracle use to reflectWhat are the mechanisms Oracle use to reflect
the INHERITANCE of object orientedthe INHERITANCE of object oriented
architecture?architecture?
 What is the significance of FINAL and NOTWhat is the significance of FINAL and NOT
FINAL?FINAL?
 What is the difference of FINAL and NOTWhat is the difference of FINAL and NOT
FINAL in case of object types and methods?FINAL in case of object types and methods?
Rushdi Shams, Dept of CSE, KUET
Method Overriding- TheoryMethod Overriding- Theory
 An method is said overriding if the methodAn method is said overriding if the method
name is same for all the objects but the objectsname is same for all the objects but the objects
define how the method works according to theirdefine how the method works according to their
convenience.convenience.
Rushdi Shams, Dept of CSE, KUET
Method Overriding- OracleMethod Overriding- Oracle
Rushdi Shams, Dept of CSE, KUET
Method Overriding- OracleMethod Overriding- Oracle
Rushdi Shams, Dept of CSE, KUET
Method Overriding- OracleMethod Overriding- Oracle
Rushdi Shams, Dept of CSE, KUET
Taking you to the RealityTaking you to the Reality 
Rushdi Shams, Dept of CSE, KUET
Taking you to the RealityTaking you to the Reality 
 You can call the show() function for the supertypeYou can call the show() function for the supertype
and subtypes in the table with the followingand subtypes in the table with the following
Rushdi Shams, Dept of CSE, KUET
& The output& The output 
Rushdi Shams, Dept of CSE, KUET
Method Overloading- TheoryMethod Overloading- Theory
 Giving a type multiple methods with the sameGiving a type multiple methods with the same
name is called method overloadingname is called method overloading
Rushdi Shams, Dept of CSE, KUET
Method Overloading- OracleMethod Overloading- Oracle
Rushdi Shams, Dept of CSE, KUET
Questions at the StageQuestions at the Stage
 What are the difference between methodWhat are the difference between method
overloading and method overriding?overloading and method overriding?
 How Oracle implements method overriding?How Oracle implements method overriding?
 How Oracle implements method overloading?How Oracle implements method overloading?
Rushdi Shams, Dept of CSE, KUET
Map MethodsMap Methods
 A map method is an optional kind of methodA map method is an optional kind of method
 provides a basis for comparing objects byprovides a basis for comparing objects by
mapping object instances to one of the scalarmapping object instances to one of the scalar
types DATE, NUMBER, VARCHAR2 or to antypes DATE, NUMBER, VARCHAR2 or to an
ANSI SQL type such as CHARACTER orANSI SQL type such as CHARACTER or
REALREAL
 With a map method, you can order any numberWith a map method, you can order any number
of objects by calling each object's map methodof objects by calling each object's map method
onceonce
Rushdi Shams, Dept of CSE, KUET
Map MethodsMap Methods
 a map method is simply a parameter-lessa map method is simply a parameter-less
member functionmember function
 uses the MAP keyworduses the MAP keyword
 returns one of the datatypes just listedreturns one of the datatypes just listed
 What makes a map method special is that, if anWhat makes a map method special is that, if an
object type defines one, the method is calledobject type defines one, the method is called
automatically to evaluate such comparisons asautomatically to evaluate such comparisons as
obj_1 > obj_2obj_1 > obj_2
Rushdi Shams, Dept of CSE, KUET
Map MethodMap Method
 Where obj_1 and obj_2 are two object variablesWhere obj_1 and obj_2 are two object variables
that can be compared using a map methodthat can be compared using a map method
map(), the comparison:map(), the comparison:
obj_1 > obj_2obj_1 > obj_2
is equivalent to:is equivalent to:
obj_1.map() > obj_2.map()obj_1.map() > obj_2.map()
Rushdi Shams, Dept of CSE, KUET
Map MethodMap Method
Rushdi Shams, Dept of CSE, KUET
Order MethodOrder Method
 Order methods make direct object-to-objectOrder methods make direct object-to-object
comparisonscomparisons
 Unlike map methods, they cannot map anyUnlike map methods, they cannot map any
number of objectsnumber of objects
 They simply tell you that the current object isThey simply tell you that the current object is
less than, equal to, or greater than the otherless than, equal to, or greater than the other
object that it is being compared to, with respectobject that it is being compared to, with respect
to the criterion used by the methodto the criterion used by the method
Rushdi Shams, Dept of CSE, KUET
Order MethodOrder Method
Rushdi Shams, Dept of CSE, KUET
Question at the StageQuestion at the Stage
 What are the methods used to compare OracleWhat are the methods used to compare Oracle
objects? Can you give two examples to defineobjects? Can you give two examples to define
them?them?
 What are the differences between map methodWhat are the differences between map method
and order method?and order method?
Rushdi Shams, Dept of CSE, KUET
ReferenceReference
 Oracle 10g User manual for Object OrientedOracle 10g User manual for Object Oriented
Data ModelData Model
 www.wikipedia.orgwww.wikipedia.org
Rushdi Shams, Dept of CSE, KUET
AcknowledgementAcknowledgement
 Nick Whittaker, Lecturer, University ofNick Whittaker, Lecturer, University of
Manchester, UKManchester, UK

More Related Content

Viewers also liked

Database Tables and Data Types
Database Tables and Data TypesDatabase Tables and Data Types
Database Tables and Data TypesRushdi Shams
 
Lec 22. Files (Part II)
Lec 22. Files (Part II)Lec 22. Files (Part II)
Lec 22. Files (Part II)Rushdi Shams
 
L9 l10 server side programming
L9 l10  server side programmingL9 l10  server side programming
L9 l10 server side programmingRushdi Shams
 
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdfOpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
OpenStack Foundation
 
DBMS Lecture 8 - Normalization
DBMS Lecture 8 - NormalizationDBMS Lecture 8 - Normalization
DBMS Lecture 8 - Normalization
Ericka Tagarda
 
NORMALIZATION - BIS 1204: Data and Information Management I
NORMALIZATION - BIS 1204: Data and Information Management I NORMALIZATION - BIS 1204: Data and Information Management I
NORMALIZATION - BIS 1204: Data and Information Management I
Mukalele Rogers
 
Database indexing techniques
Database indexing techniquesDatabase indexing techniques
Database indexing techniques
ahmadmughal0312
 
Normalization in Database
Normalization in DatabaseNormalization in Database
Normalization in Database
Afrasiyab Haider
 
Data independence
Data independenceData independence
Data independence
Aashima Wadhwa
 
DISE - Database Concepts
DISE - Database ConceptsDISE - Database Concepts
DISE - Database Concepts
Rasan Samarasinghe
 
Lecture 04 normalization
Lecture 04 normalization Lecture 04 normalization
Lecture 04 normalization emailharmeet
 
Data Dictionary
Data DictionaryData Dictionary
Data Dictionary
Vishal Anand
 
Databases: Locking Methods
Databases: Locking MethodsDatabases: Locking Methods
Databases: Locking MethodsDamian T. Gordon
 
physical and logical data independence
physical and logical data independencephysical and logical data independence
physical and logical data independenceapoorva_upadhyay
 
Architecture of-dbms-and-data-independence
Architecture of-dbms-and-data-independenceArchitecture of-dbms-and-data-independence
Architecture of-dbms-and-data-independenceAnuj Modi
 
Indexing and hashing
Indexing and hashingIndexing and hashing
Indexing and hashingJeet Poria
 
Data dictionary
Data dictionaryData dictionary
Data dictionary
Surbhi Panhalkar
 
Systems Analyst and Design - Data Dictionary
Systems Analyst and Design -  Data DictionarySystems Analyst and Design -  Data Dictionary
Systems Analyst and Design - Data Dictionary
Kimberly Coquilla
 
SAP ABAP data dictionary
SAP ABAP data dictionarySAP ABAP data dictionary
SAP ABAP data dictionary
Revanth Nagaraju
 
CBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL PresentationCBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL Presentation
Guru Ji
 

Viewers also liked (20)

Database Tables and Data Types
Database Tables and Data TypesDatabase Tables and Data Types
Database Tables and Data Types
 
Lec 22. Files (Part II)
Lec 22. Files (Part II)Lec 22. Files (Part II)
Lec 22. Files (Part II)
 
L9 l10 server side programming
L9 l10  server side programmingL9 l10  server side programming
L9 l10 server side programming
 
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdfOpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
OpenStack-Design-Summit-HA-Pairs-Are-Not-The-Only-Answer copy.pdf
 
DBMS Lecture 8 - Normalization
DBMS Lecture 8 - NormalizationDBMS Lecture 8 - Normalization
DBMS Lecture 8 - Normalization
 
NORMALIZATION - BIS 1204: Data and Information Management I
NORMALIZATION - BIS 1204: Data and Information Management I NORMALIZATION - BIS 1204: Data and Information Management I
NORMALIZATION - BIS 1204: Data and Information Management I
 
Database indexing techniques
Database indexing techniquesDatabase indexing techniques
Database indexing techniques
 
Normalization in Database
Normalization in DatabaseNormalization in Database
Normalization in Database
 
Data independence
Data independenceData independence
Data independence
 
DISE - Database Concepts
DISE - Database ConceptsDISE - Database Concepts
DISE - Database Concepts
 
Lecture 04 normalization
Lecture 04 normalization Lecture 04 normalization
Lecture 04 normalization
 
Data Dictionary
Data DictionaryData Dictionary
Data Dictionary
 
Databases: Locking Methods
Databases: Locking MethodsDatabases: Locking Methods
Databases: Locking Methods
 
physical and logical data independence
physical and logical data independencephysical and logical data independence
physical and logical data independence
 
Architecture of-dbms-and-data-independence
Architecture of-dbms-and-data-independenceArchitecture of-dbms-and-data-independence
Architecture of-dbms-and-data-independence
 
Indexing and hashing
Indexing and hashingIndexing and hashing
Indexing and hashing
 
Data dictionary
Data dictionaryData dictionary
Data dictionary
 
Systems Analyst and Design - Data Dictionary
Systems Analyst and Design -  Data DictionarySystems Analyst and Design -  Data Dictionary
Systems Analyst and Design - Data Dictionary
 
SAP ABAP data dictionary
SAP ABAP data dictionarySAP ABAP data dictionary
SAP ABAP data dictionary
 
CBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL PresentationCBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL Presentation
 

Similar to L14 l15 Object Oriented DBMS

(An Extended) Beginners Guide to Object Orientation in PHP
(An Extended) Beginners Guide to Object Orientation in PHP(An Extended) Beginners Guide to Object Orientation in PHP
(An Extended) Beginners Guide to Object Orientation in PHP
Rick Ogden
 
The need for sophistication in modern search engine implementations
The need for sophistication in modern search engine implementationsThe need for sophistication in modern search engine implementations
The need for sophistication in modern search engine implementations
Ben DeMott
 
M01_OO_Intro.ppt
M01_OO_Intro.pptM01_OO_Intro.ppt
M01_OO_Intro.ppt
RojaPogul1
 
2.oop concept
2.oop concept2.oop concept
2.oop concept
Robbie AkaChopa
 
Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)
muhammadmubinmacadad2
 
Java basics
Java basicsJava basics
Java basics
Shivanshu Purwar
 
Object-Oriented Programming.pptx
Object-Oriented Programming.pptxObject-Oriented Programming.pptx
Object-Oriented Programming.pptx
ssusereae59d
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?
AMITJain879
 
11 Using classes and objects
11 Using classes and objects11 Using classes and objects
11 Using classes and objects
maznabili
 
Using class and object java
Using class and object javaUsing class and object java
Using class and object java
mha4
 
Jedi slides 2.1 object-oriented concepts
Jedi slides 2.1 object-oriented conceptsJedi slides 2.1 object-oriented concepts
Jedi slides 2.1 object-oriented concepts
Maryo Manjaruni
 
Oops concepts
Oops conceptsOops concepts
Oops concepts
ACCESS Health Digital
 
OOPS in Java
OOPS in JavaOOPS in Java
OOPS in Java
Zeeshan Khan
 
Ruby Interview Questions
Ruby Interview QuestionsRuby Interview Questions
Ruby Interview Questions
Sumanth krishna
 
OOSD1-unit1_1_16_09.pptx
OOSD1-unit1_1_16_09.pptxOOSD1-unit1_1_16_09.pptx
OOSD1-unit1_1_16_09.pptx
ShobhitSrivastava15887
 
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
MandeepSingh631581
 
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptxOBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
Maharshi Dayanand University Rohtak
 
Bt8901 objective oriented systems1
Bt8901 objective oriented systems1Bt8901 objective oriented systems1
Bt8901 objective oriented systems1
Techglyphs
 
Object oriented javascript
Object oriented javascriptObject oriented javascript
Object oriented javascript
Usman Mehmood
 

Similar to L14 l15 Object Oriented DBMS (20)

(An Extended) Beginners Guide to Object Orientation in PHP
(An Extended) Beginners Guide to Object Orientation in PHP(An Extended) Beginners Guide to Object Orientation in PHP
(An Extended) Beginners Guide to Object Orientation in PHP
 
The need for sophistication in modern search engine implementations
The need for sophistication in modern search engine implementationsThe need for sophistication in modern search engine implementations
The need for sophistication in modern search engine implementations
 
M01_OO_Intro.ppt
M01_OO_Intro.pptM01_OO_Intro.ppt
M01_OO_Intro.ppt
 
2.oop concept
2.oop concept2.oop concept
2.oop concept
 
Lecture 5.pptx
Lecture 5.pptxLecture 5.pptx
Lecture 5.pptx
 
Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)
 
Java basics
Java basicsJava basics
Java basics
 
Object-Oriented Programming.pptx
Object-Oriented Programming.pptxObject-Oriented Programming.pptx
Object-Oriented Programming.pptx
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?
 
11 Using classes and objects
11 Using classes and objects11 Using classes and objects
11 Using classes and objects
 
Using class and object java
Using class and object javaUsing class and object java
Using class and object java
 
Jedi slides 2.1 object-oriented concepts
Jedi slides 2.1 object-oriented conceptsJedi slides 2.1 object-oriented concepts
Jedi slides 2.1 object-oriented concepts
 
Oops concepts
Oops conceptsOops concepts
Oops concepts
 
OOPS in Java
OOPS in JavaOOPS in Java
OOPS in Java
 
Ruby Interview Questions
Ruby Interview QuestionsRuby Interview Questions
Ruby Interview Questions
 
OOSD1-unit1_1_16_09.pptx
OOSD1-unit1_1_16_09.pptxOOSD1-unit1_1_16_09.pptx
OOSD1-unit1_1_16_09.pptx
 
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
 
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptxOBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
 
Bt8901 objective oriented systems1
Bt8901 objective oriented systems1Bt8901 objective oriented systems1
Bt8901 objective oriented systems1
 
Object oriented javascript
Object oriented javascriptObject oriented javascript
Object oriented javascript
 

More from Rushdi Shams

Research Methodology and Tips on Better Research
Research Methodology and Tips on Better ResearchResearch Methodology and Tips on Better Research
Research Methodology and Tips on Better Research
Rushdi Shams
 
Common evaluation measures in NLP and IR
Common evaluation measures in NLP and IRCommon evaluation measures in NLP and IR
Common evaluation measures in NLP and IR
Rushdi Shams
 
Machine learning with nlp 101
Machine learning with nlp 101Machine learning with nlp 101
Machine learning with nlp 101
Rushdi Shams
 
Semi-supervised classification for natural language processing
Semi-supervised classification for natural language processingSemi-supervised classification for natural language processing
Semi-supervised classification for natural language processing
Rushdi Shams
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: Parsing
Rushdi Shams
 
Types of machine translation
Types of machine translationTypes of machine translation
Types of machine translationRushdi Shams
 
L1 l2 l3 introduction to machine translation
L1 l2 l3  introduction to machine translationL1 l2 l3  introduction to machine translation
L1 l2 l3 introduction to machine translationRushdi Shams
 
Syntax and semantics
Syntax and semanticsSyntax and semantics
Syntax and semanticsRushdi Shams
 
Propositional logic
Propositional logicPropositional logic
Propositional logicRushdi Shams
 
Probabilistic logic
Probabilistic logicProbabilistic logic
Probabilistic logicRushdi Shams
 
Knowledge structure
Knowledge structureKnowledge structure
Knowledge structureRushdi Shams
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representationRushdi Shams
 
L5 understanding hacking
L5  understanding hackingL5  understanding hacking
L5 understanding hackingRushdi Shams
 
L2 Intrusion Detection System (IDS)
L2  Intrusion Detection System (IDS)L2  Intrusion Detection System (IDS)
L2 Intrusion Detection System (IDS)Rushdi Shams
 

More from Rushdi Shams (20)

Research Methodology and Tips on Better Research
Research Methodology and Tips on Better ResearchResearch Methodology and Tips on Better Research
Research Methodology and Tips on Better Research
 
Common evaluation measures in NLP and IR
Common evaluation measures in NLP and IRCommon evaluation measures in NLP and IR
Common evaluation measures in NLP and IR
 
Machine learning with nlp 101
Machine learning with nlp 101Machine learning with nlp 101
Machine learning with nlp 101
 
Semi-supervised classification for natural language processing
Semi-supervised classification for natural language processingSemi-supervised classification for natural language processing
Semi-supervised classification for natural language processing
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: Parsing
 
Types of machine translation
Types of machine translationTypes of machine translation
Types of machine translation
 
L1 l2 l3 introduction to machine translation
L1 l2 l3  introduction to machine translationL1 l2 l3  introduction to machine translation
L1 l2 l3 introduction to machine translation
 
Syntax and semantics
Syntax and semanticsSyntax and semantics
Syntax and semantics
 
Propositional logic
Propositional logicPropositional logic
Propositional logic
 
Probabilistic logic
Probabilistic logicProbabilistic logic
Probabilistic logic
 
L15 fuzzy logic
L15  fuzzy logicL15  fuzzy logic
L15 fuzzy logic
 
Knowledge structure
Knowledge structureKnowledge structure
Knowledge structure
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representation
 
First order logic
First order logicFirst order logic
First order logic
 
Belief function
Belief functionBelief function
Belief function
 
L5 understanding hacking
L5  understanding hackingL5  understanding hacking
L5 understanding hacking
 
L4 vpn
L4  vpnL4  vpn
L4 vpn
 
L3 defense
L3  defenseL3  defense
L3 defense
 
L2 Intrusion Detection System (IDS)
L2  Intrusion Detection System (IDS)L2  Intrusion Detection System (IDS)
L2 Intrusion Detection System (IDS)
 
L1 phishing
L1  phishingL1  phishing
L1 phishing
 

Recently uploaded

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 

Recently uploaded (20)

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 

L14 l15 Object Oriented DBMS

  • 1. Rushdi Shams, Dept of CSE, KUET Database SystemsDatabase Systems Object Oriented DatabaseObject Oriented Database Management SystemsManagement Systems Version 1.0Version 1.0
  • 2. Rushdi Shams, Dept of CSE, KUET Object- TheoryObject- Theory  An object is a package of data and procedures.An object is a package of data and procedures.  Data is contained in attributes of an objectData is contained in attributes of an object  Procedures are defined in methods of an objectProcedures are defined in methods of an object
  • 3. Rushdi Shams, Dept of CSE, KUET Object- TheoryObject- Theory Concept of ClassConcept of Class
  • 4. Rushdi Shams, Dept of CSE, KUET Objects- TheoryObjects- Theory Concepts of ObjectsConcepts of Objects
  • 5. Rushdi Shams, Dept of CSE, KUET Object Types in OracleObject Types in Oracle Concept of ClassConcept of Class
  • 6. Rushdi Shams, Dept of CSE, KUET Objects in OracleObjects in Oracle  When you create a variable of an object type,When you create a variable of an object type, you create an instance of the type and the resultyou create an instance of the type and the result is an objectis an object  An object has the attributes and methodsAn object has the attributes and methods defined for its typedefined for its type  an object instance is a concrete thing, you canan object instance is a concrete thing, you can assign values to its attributes and call itsassign values to its attributes and call its methodsmethods
  • 7. Rushdi Shams, Dept of CSE, KUET Objects in OracleObjects in Oracle rushdirushdi person_typ;person_typ; will create an object named rushdi of typewill create an object named rushdi of type person_typ.person_typ.
  • 8. Rushdi Shams, Dept of CSE, KUET Question at the stageQuestion at the stage  How the property ENCAPSULATION reflectsHow the property ENCAPSULATION reflects in OODM?in OODM?  What is the difference between object type andWhat is the difference between object type and object in Oracle?object in Oracle?  What is the relation between Oracle’s objectWhat is the relation between Oracle’s object type and OOP’s class?type and OOP’s class?
  • 9. Rushdi Shams, Dept of CSE, KUET Object Type is a Data Type!Object Type is a Data Type!  Defining an object type does not allocate anyDefining an object type does not allocate any storagestorage  After they are defined, object types can be usedAfter they are defined, object types can be used in SQL statements in most of the same placesin SQL statements in most of the same places you can use types like NUMBER oryou can use types like NUMBER or VARCHAR2VARCHAR2
  • 10. Rushdi Shams, Dept of CSE, KUET Object Type is a Data Type!Object Type is a Data Type!
  • 11. Rushdi Shams, Dept of CSE, KUET Question at the stageQuestion at the stage  ““An object type is a data type”- justify theAn object type is a data type”- justify the answer.answer.
  • 12. Rushdi Shams, Dept of CSE, KUET Object Methods in OracleObject Methods in Oracle  Methods are functions or procedures that youMethods are functions or procedures that you can declare in an object type definition tocan declare in an object type definition to implement behavior that you want objects ofimplement behavior that you want objects of that type to performthat type to perform  The general kinds of methods that can beThe general kinds of methods that can be declared in a type definition are:declared in a type definition are: 1.1. MemberMember 2.2. StaticStatic 3.3. ConstructorConstructor
  • 13. Rushdi Shams, Dept of CSE, KUET Member MethodsMember Methods  Member methods are the means by which anMember methods are the means by which an application gains access to an object instance's dataapplication gains access to an object instance's data  You define a member method in the object type forYou define a member method in the object type for each operation that you want an object of that type toeach operation that you want an object of that type to be able to performbe able to perform
  • 14. Rushdi Shams, Dept of CSE, KUET Static MethodsStatic Methods  Static methods are invoked on the object type,Static methods are invoked on the object type, not its instancesnot its instances  You use a static method for operations that areYou use a static method for operations that are global to the type and do not need to referenceglobal to the type and do not need to reference the data of a particular object instancethe data of a particular object instance  A static method has no SELF parameterA static method has no SELF parameter
  • 15. Rushdi Shams, Dept of CSE, KUET Static MethodsStatic Methods  You invoke a static method by using the dotYou invoke a static method by using the dot notation to qualify the method call with thenotation to qualify the method call with the name of the object type, such as:name of the object type, such as: type_name.method()type_name.method()
  • 16. Rushdi Shams, Dept of CSE, KUET Constructor MethodsConstructor Methods  Every object type has a constructor method implicitlyEvery object type has a constructor method implicitly defined for it by the systemdefined for it by the system  A constructor method is a function that returns a newA constructor method is a function that returns a new instance of the user-defined type and sets up the valuesinstance of the user-defined type and sets up the values of its attributesof its attributes
  • 17. Rushdi Shams, Dept of CSE, KUET Questions at the StageQuestions at the Stage  What are the three methods that can be declaredWhat are the three methods that can be declared in object type definition?in object type definition?  What is the difference between static methodWhat is the difference between static method and member method?and member method?  What is the speciality about constructor method?What is the speciality about constructor method?
  • 18. Rushdi Shams, Dept of CSE, KUET Inheritance- TheoryInheritance- Theory  A type hierarchy is a sort of family tree of objectA type hierarchy is a sort of family tree of object typestypes  It consists of a parent base type, called a superIt consists of a parent base type, called a super typetype  one or more levels of child object types, calledone or more levels of child object types, called subtypessubtypes  Child object types are derived from parentChild object types are derived from parent object classobject class
  • 19. Rushdi Shams, Dept of CSE, KUET Inheritance- TheoryInheritance- Theory  A subtype becomes a specialized version of theA subtype becomes a specialized version of the parent type by adding new attributes andparent type by adding new attributes and methods to the set inherited from the parent ormethods to the set inherited from the parent or by redefining methods it inheritsby redefining methods it inherits  Redefining an inherited methods gives a subtypeRedefining an inherited methods gives a subtype its own way of executing the methodits own way of executing the method
  • 20. Rushdi Shams, Dept of CSE, KUET Inheritance- TheoryInheritance- Theory
  • 21. Rushdi Shams, Dept of CSE, KUET Inheritance- TheoryInheritance- Theory
  • 22. Rushdi Shams, Dept of CSE, KUET PolymorphismPolymorphism  Add to this that an object instance of a subtypeAdd to this that an object instance of a subtype can generally be substituted for an objectcan generally be substituted for an object instance of any of its supertypes in code, andinstance of any of its supertypes in code, and you have polymorphismyou have polymorphism
  • 23. Rushdi Shams, Dept of CSE, KUET Final & Not Final- TypesFinal & Not Final- Types  The definition of an object type determines whetherThe definition of an object type determines whether subtypes can be derived from that typesubtypes can be derived from that type  To permit subtypes, the object type must be defined asTo permit subtypes, the object type must be defined as not finalnot final
  • 24. Rushdi Shams, Dept of CSE, KUET Final & Not Final- TypesFinal & Not Final- Types  By default, an object type is declared as final andBy default, an object type is declared as final and subtypes cannot be derived from itsubtypes cannot be derived from it  You can change a final type to a not final type and viceYou can change a final type to a not final type and vice versa with an ALTER TYPE statementversa with an ALTER TYPE statement  You can alter a type from NOT FINAL to FINALYou can alter a type from NOT FINAL to FINAL only if the target type has no subtypesonly if the target type has no subtypes
  • 25. Rushdi Shams, Dept of CSE, KUET Final & Not Final- MethodsFinal & Not Final- Methods  Methods can also be declared to be final or notMethods can also be declared to be final or not finalfinal  If a method is declared to be final, subtypesIf a method is declared to be final, subtypes cannotcannot overrideoverride it by providing their ownit by providing their own implementationimplementation  Unlike types, methods are not final by defaultUnlike types, methods are not final by default and must be explicitly declared to be finaland must be explicitly declared to be final
  • 26. Rushdi Shams, Dept of CSE, KUET Final & Not Final- MethodsFinal & Not Final- Methods
  • 27. Rushdi Shams, Dept of CSE, KUET Inheritance- OracleInheritance- Oracle Creating SubtypeCreating Subtype
  • 28. Rushdi Shams, Dept of CSE, KUET Inheritance- OracleInheritance- Oracle Creating Subtype of subtypeCreating Subtype of subtype
  • 29. Rushdi Shams, Dept of CSE, KUET Questions at the StageQuestions at the Stage  What are the mechanisms Oracle use to reflectWhat are the mechanisms Oracle use to reflect the INHERITANCE of object orientedthe INHERITANCE of object oriented architecture?architecture?  What is the significance of FINAL and NOTWhat is the significance of FINAL and NOT FINAL?FINAL?  What is the difference of FINAL and NOTWhat is the difference of FINAL and NOT FINAL in case of object types and methods?FINAL in case of object types and methods?
  • 30. Rushdi Shams, Dept of CSE, KUET Method Overriding- TheoryMethod Overriding- Theory  An method is said overriding if the methodAn method is said overriding if the method name is same for all the objects but the objectsname is same for all the objects but the objects define how the method works according to theirdefine how the method works according to their convenience.convenience.
  • 31. Rushdi Shams, Dept of CSE, KUET Method Overriding- OracleMethod Overriding- Oracle
  • 32. Rushdi Shams, Dept of CSE, KUET Method Overriding- OracleMethod Overriding- Oracle
  • 33. Rushdi Shams, Dept of CSE, KUET Method Overriding- OracleMethod Overriding- Oracle
  • 34. Rushdi Shams, Dept of CSE, KUET Taking you to the RealityTaking you to the Reality 
  • 35. Rushdi Shams, Dept of CSE, KUET Taking you to the RealityTaking you to the Reality   You can call the show() function for the supertypeYou can call the show() function for the supertype and subtypes in the table with the followingand subtypes in the table with the following
  • 36. Rushdi Shams, Dept of CSE, KUET & The output& The output 
  • 37. Rushdi Shams, Dept of CSE, KUET Method Overloading- TheoryMethod Overloading- Theory  Giving a type multiple methods with the sameGiving a type multiple methods with the same name is called method overloadingname is called method overloading
  • 38. Rushdi Shams, Dept of CSE, KUET Method Overloading- OracleMethod Overloading- Oracle
  • 39. Rushdi Shams, Dept of CSE, KUET Questions at the StageQuestions at the Stage  What are the difference between methodWhat are the difference between method overloading and method overriding?overloading and method overriding?  How Oracle implements method overriding?How Oracle implements method overriding?  How Oracle implements method overloading?How Oracle implements method overloading?
  • 40. Rushdi Shams, Dept of CSE, KUET Map MethodsMap Methods  A map method is an optional kind of methodA map method is an optional kind of method  provides a basis for comparing objects byprovides a basis for comparing objects by mapping object instances to one of the scalarmapping object instances to one of the scalar types DATE, NUMBER, VARCHAR2 or to antypes DATE, NUMBER, VARCHAR2 or to an ANSI SQL type such as CHARACTER orANSI SQL type such as CHARACTER or REALREAL  With a map method, you can order any numberWith a map method, you can order any number of objects by calling each object's map methodof objects by calling each object's map method onceonce
  • 41. Rushdi Shams, Dept of CSE, KUET Map MethodsMap Methods  a map method is simply a parameter-lessa map method is simply a parameter-less member functionmember function  uses the MAP keyworduses the MAP keyword  returns one of the datatypes just listedreturns one of the datatypes just listed  What makes a map method special is that, if anWhat makes a map method special is that, if an object type defines one, the method is calledobject type defines one, the method is called automatically to evaluate such comparisons asautomatically to evaluate such comparisons as obj_1 > obj_2obj_1 > obj_2
  • 42. Rushdi Shams, Dept of CSE, KUET Map MethodMap Method  Where obj_1 and obj_2 are two object variablesWhere obj_1 and obj_2 are two object variables that can be compared using a map methodthat can be compared using a map method map(), the comparison:map(), the comparison: obj_1 > obj_2obj_1 > obj_2 is equivalent to:is equivalent to: obj_1.map() > obj_2.map()obj_1.map() > obj_2.map()
  • 43. Rushdi Shams, Dept of CSE, KUET Map MethodMap Method
  • 44. Rushdi Shams, Dept of CSE, KUET Order MethodOrder Method  Order methods make direct object-to-objectOrder methods make direct object-to-object comparisonscomparisons  Unlike map methods, they cannot map anyUnlike map methods, they cannot map any number of objectsnumber of objects  They simply tell you that the current object isThey simply tell you that the current object is less than, equal to, or greater than the otherless than, equal to, or greater than the other object that it is being compared to, with respectobject that it is being compared to, with respect to the criterion used by the methodto the criterion used by the method
  • 45. Rushdi Shams, Dept of CSE, KUET Order MethodOrder Method
  • 46. Rushdi Shams, Dept of CSE, KUET Question at the StageQuestion at the Stage  What are the methods used to compare OracleWhat are the methods used to compare Oracle objects? Can you give two examples to defineobjects? Can you give two examples to define them?them?  What are the differences between map methodWhat are the differences between map method and order method?and order method?
  • 47. Rushdi Shams, Dept of CSE, KUET ReferenceReference  Oracle 10g User manual for Object OrientedOracle 10g User manual for Object Oriented Data ModelData Model  www.wikipedia.orgwww.wikipedia.org
  • 48. Rushdi Shams, Dept of CSE, KUET AcknowledgementAcknowledgement  Nick Whittaker, Lecturer, University ofNick Whittaker, Lecturer, University of Manchester, UKManchester, UK