Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • DSA
  • Data Structures
  • Array
  • String
  • Linked List
  • Stack
  • Queue
  • Tree
  • Binary Tree
  • Binary Search Tree
  • Heap
  • Hashing
  • Graph
  • Trie
  • Segment Tree
  • Disjoint Set Union
  • Fenwick Tree
  • AVL Tree
  • Red-Black Tree
  • Advanced Data Structures
Open In App
Next Article:
Differences Between Abstract Factory and Factory Design Patterns
Next article icon

Difference between Abstract Data Types and Objects

Last Updated : 29 Jun, 2021
Comments
Improve
Suggest changes
Like Article
Like
Report

1. Abstract data type (ADT) :
An Abstract data type (ADT) is a mathematical model for data types. We can think of Abstract Data Type as a black box. As black box hides internal structure, ADT hides the design of data type. An abstract data type’s behavior (semantics) can be specified from the perspective of a data user, specifically in terms of potential values, potential operations on this type of data, and the behavior of these operations. It is user defined data type.
It is a conceptual abstraction defined that represent data and data operations. Abstract Data Types are concerned with what, not how (they are expressed decoratively, and they do not specify algorithms or data structures). Examples include lists, stacks, queue, and sets.

2. Objects :
Objects are not the only way to achieve abstraction. It implements procedural data abstraction, as known by many. Abstract data types approach abstraction in a different way. When we define a class, no memory is allocated but when we instantiate (i.e. An object is created) memory is allocated.
An object is an instance of a class, with its own copy of any non-static variables.

Difference between Abstract Data Types and Objects :

Abstract Data Type

Objects

Abstract data type is abstraction that define set of values and set of operations on these values. It is a self-contained component which consists of methods and properties to make certain type of data useful.
User-defined data type. It is an instance of class.
ADT is made of with primitive datatypes. An object is an abstract data type with the addition of polymorphism and inheritance.
It is a type (or class) for objects whose behaviour is defined by a set of value and a set of operations. It is a basic unit of Object-Oriented Programming.
 Abstract datatype is not necessarily an OOP concept. Objects is an OOP concept.
Common examples include lists, stacks, sets, etc.

Objects have states and behaviours  

Test t = new Test();.

Allocate memory when data is stored. When we instantiate an object then memory is allocated.

 



Next Article
Differences Between Abstract Factory and Factory Design Patterns

A

annianni
Improve
Article Tags :
  • Data Structures
Practice Tags :
  • Data Structures

Similar Reads

  • Difference between Abstract and Concrete Data Structure
    In this article we will discuss the differences between Abstract and Concrete data structure or type. Abstract Data Types(ADT) : It is a type (or class) of objects whose behaviour is defined by a set of values and a set of operations. The user interacts with the interface, using the operations that
    2 min read
  • Differences Between Abstract Factory and Factory Design Patterns
    Exploring the differences between Abstract Factory and Factory Design Patterns is essential for creating efficient software. Despite both being about making objects, they have different roles. This article breaks down these differences to help developers choose the right approach. Important Topics f
    4 min read
  • Difference between Data Structures and Algorithms
    What are Data Structures and Algorithms? Data structures and algorithms are two interrelated concepts in computer science. Data structures refer to the organization, storage, and retrieval of data, while algorithms refer to the set of instructions used to solve a particular problem or perform a spec
    2 min read
  • Difference between data type and data structure
    Data Type A data type is the most basic and the most common classification of data. It is this through which the compiler gets to know the form or the type of information that will be used throughout the code. So basically data type is a type of information transmitted between the programmer and the
    4 min read
  • Difference between abstract class and interface in Python
    In this article, we are going to see the difference between abstract classes and interface in Python, Below are the points that are discussed in this article: What is an abstract class in Python?What is an interface in Python?Difference between abstract class and interface in PythonWhat is an Abstra
    4 min read
  • Semantic Difference between Set and Type
    The concepts of sets and types are fundamental in mathematics and computer science, but they serve different purposes and have distinct properties. Understanding the semantic differences between them helps clarify their roles in various theoretical and practical applications. These two terms are vit
    9 min read
  • Difference between fundamental data types and derived data types
    In computer programming, data type is a classification that specifies to compiler or interpreter which type of data user is intending to use. There are two types of data types - Primitive/Fundamental data type: Each variable in C/C++ has an associated data type. Each data type requires different amo
    8 min read
  • Difference between interfaces and classes in TypeScript
    In this article, we will see what is the Difference between "interface" and "Classes" in TypeScript. Interface: Interface is the virtual structure that is used for type-checking. In TypeScript we use interface keyword to create the new interface with identity. It create the structure for the same da
    3 min read
  • Difference between Database and Data Structure
    It is important to understand the fundamental difference between a database and a data structure. Basically, the database is used to store large amounts of data in a specific manner, that can be assessed, maintained, and updated by a database management system. There are many ways of organizing the
    4 min read
  • C++ - Difference Between Functors and Functions
    In C++, we have multiple options to operate over the data like in the case where we can use functions and functors. Although both seem to be similar in a few ways but have multiple differences between them. Let's check the differences between functions and functors in C++. What are functions? Functi
    3 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences