This document introduces object-oriented programming (OOP) by discussing the differences between structured and OOP, key OOP terminology like objects, classes, methods and attributes, and the four main design principles of OOP: encapsulation, abstraction, polymorphism, and inheritance. It provides examples of attributes and methods for a car class and explains the benefits of OOP like code reuse and easier debugging. Finally, it briefly covers some popular OOP programming languages like Java, C++ and Smalltalk.
This document introduces object-oriented programming (OOP) by discussing the differences between structured and OOP, key OOP terminology like objects, classes, methods and attributes, and the four main design principles of OOP: encapsulation, abstraction, polymorphism, and inheritance. It provides examples of attributes and methods for a car class and explains the benefits of OOP like code reuse and easier debugging. Finally, it briefly covers some popular OOP programming languages like Java, C++ and Smalltalk.
echnology is the application of knowledge for achieving practical goals in a reproducible way. The word technology can also mean the products resulting from such efforts, including both tangible tools such as utensils or machines, and intangible ones such as software
This document introduces object-oriented programming (OOP) by explaining the differences between structured and OOP, defining key OOP terminology like class, object, method, and attribute. It describes the four main design principles of OOP - encapsulation, abstraction, polymorphism, and inheritance. Encapsulation hides implementation details and abstraction focuses on important facts. Polymorphism allows the same word to have different meanings. Inheritance allows classes to inherit attributes and methods from superclasses to subclasses. Popular OOP languages include Java, C++, and Smalltalk.
This document introduces object-oriented programming (OOP) by explaining the differences between structured and OOP, defining key OOP terminology like objects, classes, methods, and attributes. It describes the four main design principles of OOP - encapsulation, abstraction, polymorphism, and inheritance. Encapsulation hides implementation details and abstraction focuses on important facts. Polymorphism allows the same word to have different meanings. Inheritance allows classes to inherit attributes and methods from superclasses to subclasses. Popular OOP languages include Java, C++, and Smalltalk.
This document discusses object-oriented programming (OOP) concepts and languages. It begins with an introduction to programming languages from low-level machine languages to high-level languages. It then covers OOP concepts like classes, objects, encapsulation, inheritance, and polymorphism. It provides examples to illustrate these concepts. The document also discusses advantages and disadvantages of OOP as well as its suitability for complex, modular systems that can benefit from code reuse.
This document introduces object-oriented programming (OOP) by explaining the differences between structured and object-oriented programming, defining key OOP terminology like class, object, attribute, and method, and describing the four main design principles of OOP: encapsulation, abstraction, polymorphism, and inheritance. It provides examples of attributes and methods for a car class and discusses why OOP is useful for code reuse and easier debugging.
This document provides an introduction to object-oriented programming (OOP) using Java. It defines key OOP concepts like classes, objects, encapsulation, inheritance and polymorphism. It explains the differences between procedural and object-oriented paradigms. Popular OOP languages like Java, C++, Smalltalk are listed, with examples of how classes and objects are used to represent real-world entities like vehicles. The advantages of OOP like code reusability and modular design are also summarized.
Object-oriented programming (OOP) models real-world objects like their attributes and behaviors, grouping similar objects into classes. The four main principles of OOP are encapsulation, abstraction, inheritance and polymorphism. OOP aims to reuse code through classes, make debugging and testing easier, and better model real-world problems compared to structured/functional programming.
Object Oriented Programming is a programming paradigm that uses objects and their interactions to design applications and computer programs. The document discusses the limitations of procedural programming and how object oriented programming aims to address these. It introduces key concepts of OOP like classes, objects, encapsulation, inheritance and polymorphism. Classes act as a blueprint to create real objects with data and behaviors. The document provides examples of defining empty classes and creating multiple objects in Python.
This document provides an introduction to object-oriented programming (OOP) concepts. It discusses the history and advantages of OOP, including enabling code reuse through inheritance and encapsulation. Key OOP concepts covered include classes, objects, encapsulation, abstraction, inheritance, polymorphism, and the differences between abstraction and encapsulation. Examples are provided to illustrate classes, objects, encapsulation, and the differences between structured and object-oriented programming.
This document provides an introduction to object-oriented programming (OOP) concepts. It discusses the history and advantages of OOP, including enabling code reuse through inheritance and encapsulation. Key OOP concepts like classes, objects, encapsulation, abstraction, inheritance, polymorphism are defined. Classes are blueprints that define common attributes and behaviors of objects. Objects are instances of classes. Encapsulation binds code and data together, hiding implementation details. Inheritance allows classes to inherit behaviors from superclasses. Polymorphism allows the same interface to exhibit different behaviors depending on data types used.
The document discusses object-oriented programming concepts like classes, objects, methods, properties, inheritance, and polymorphism. It provides examples of different OOP concepts in C# like class definitions, object creation, method overloading, and inheritance hierarchies. The key topics covered include defining classes with data members and methods, creating objects from classes, using inheritance to extend classes, and implementing polymorphism through method overloading and overriding.
This document compares procedure-oriented programming and object-oriented programming. Procedure-oriented programming divides programs into smaller subprograms called functions that can access shared global data, while object-oriented programming divides programs into objects that encapsulate both data and functions together and protect data from access by external functions. The document also discusses key object-oriented programming concepts like classes, encapsulation, inheritance, polymorphism, and messaging that provide benefits like code reuse and easier management of complex software projects.
the Concept of Object-Oriented ProgrammingAida Ramlan II
This document provides an introduction to object-oriented programming (OOP). It discusses key OOP concepts like enabling code reuse through inheritance and modifying existing code more easily. While OOP became popular in the 1980s, its origins date back to the Simula programming languages from the 1960s. OOP provides clear modular structures, makes code maintenance and modification easier, and offers a framework for code libraries. The document also defines important OOP terminology like classes, objects, encapsulation, abstraction, inheritance, polymorphism and distinguishes between abstraction and encapsulation.
The document provides an overview of Java programming basics. It discusses object-oriented programming concepts like classes, objects, inheritance, polymorphism and encapsulation. It also covers Java features like platform independence, security, simplicity. The document then describes Java programming basics like variables, data types, operators, expressions. It provides examples to explain concepts like declaring variables, assigning values, scope of variables.
Basics of object oriented programming interview tips for JavaMartin A
This document provides an overview of object-oriented programming concepts. It discusses the limitations of structured programming, such as difficulties with debugging, inflexibility, and high costs. Object-oriented programming addresses these issues by combining data and functions into self-contained objects. Classes are templates that are used to create objects. Key principles of OOP like encapsulation, inheritance, and polymorphism are explained. The document also covers static and non-static data, accessibility levels, and templates.
This document provides an overview of Java programming basics. It discusses object-oriented programming concepts like classes, objects, inheritance, polymorphism and encapsulation. It also covers Java features like platform independence, security, simplicity and performance. Additionally, it describes Java programming fundamentals like variables, data types, operators, expressions and input/output. The document serves as an introduction to the Java language for beginners.
This document provides an introduction to object-oriented programming and Java. It discusses the basics of OOP concepts like classes, objects, encapsulation, inheritance, polymorphism and dynamic binding. It explains the benefits of OOP like modularity, code reuse and information hiding. The document also outlines some key features of the Java programming language like platform independence, security, simplicity and performance. It positions Java as a pure object-oriented language suitable for developing both standalone applications and web applets.
C++ is a middle-level programming language developed by Bjarne Stroustrup starting in 1979 at Bell Labs. C++ runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX
Most C++ compilers don't care what extension you give your source code, but if you don't specify otherwise, many will use .cpp by default
Most frequently used and free available compiler is GNU C/C++ compiler, otherwise you can have compilers either from HP or Solaris if you have respective Operating Systems.
The document discusses object-oriented programming and several key concepts:
1) OOP organizes programs around objects and well-defined interfaces rather than procedural code. This improves modularity and reuse.
2) Objects encapsulate both data (attributes) and behaviors (methods) and communicate via messages. This mimics the real world.
3) Distributed object systems allow objects to communicate across a network. Paradigms like remote method invocation, object request brokers, and object spaces define how this is implemented.
How to Prepare for Palo Alto XDR Analyst Certification.pdfAakruthi Singh
Start here---https://shorturl.at/3sJkz---Get complete detail on XDR-Analyst exam guide to crack Palo Alto Networks Certified XDR Analyst. You can collect all information on XDR-Analyst tutorial, practice test, books, study material, exam questions, and syllabus. Firm your knowledge on Palo Alto Networks Certified XDR Analyst and get ready to crack XDR-Analyst certification. Explore all information on XDR-Analyst exam with number of questions, passing percentage and time duration to complete test.
More Related Content
Similar to Introduction.ppt JAVA SCRIPT PROGRAMMING AND (20)
This document provides an introduction to object-oriented programming (OOP) using Java. It defines key OOP concepts like classes, objects, encapsulation, inheritance and polymorphism. It explains the differences between procedural and object-oriented paradigms. Popular OOP languages like Java, C++, Smalltalk are listed, with examples of how classes and objects are used to represent real-world entities like vehicles. The advantages of OOP like code reusability and modular design are also summarized.
Object-oriented programming (OOP) models real-world objects like their attributes and behaviors, grouping similar objects into classes. The four main principles of OOP are encapsulation, abstraction, inheritance and polymorphism. OOP aims to reuse code through classes, make debugging and testing easier, and better model real-world problems compared to structured/functional programming.
Object Oriented Programming is a programming paradigm that uses objects and their interactions to design applications and computer programs. The document discusses the limitations of procedural programming and how object oriented programming aims to address these. It introduces key concepts of OOP like classes, objects, encapsulation, inheritance and polymorphism. Classes act as a blueprint to create real objects with data and behaviors. The document provides examples of defining empty classes and creating multiple objects in Python.
This document provides an introduction to object-oriented programming (OOP) concepts. It discusses the history and advantages of OOP, including enabling code reuse through inheritance and encapsulation. Key OOP concepts covered include classes, objects, encapsulation, abstraction, inheritance, polymorphism, and the differences between abstraction and encapsulation. Examples are provided to illustrate classes, objects, encapsulation, and the differences between structured and object-oriented programming.
This document provides an introduction to object-oriented programming (OOP) concepts. It discusses the history and advantages of OOP, including enabling code reuse through inheritance and encapsulation. Key OOP concepts like classes, objects, encapsulation, abstraction, inheritance, polymorphism are defined. Classes are blueprints that define common attributes and behaviors of objects. Objects are instances of classes. Encapsulation binds code and data together, hiding implementation details. Inheritance allows classes to inherit behaviors from superclasses. Polymorphism allows the same interface to exhibit different behaviors depending on data types used.
The document discusses object-oriented programming concepts like classes, objects, methods, properties, inheritance, and polymorphism. It provides examples of different OOP concepts in C# like class definitions, object creation, method overloading, and inheritance hierarchies. The key topics covered include defining classes with data members and methods, creating objects from classes, using inheritance to extend classes, and implementing polymorphism through method overloading and overriding.
This document compares procedure-oriented programming and object-oriented programming. Procedure-oriented programming divides programs into smaller subprograms called functions that can access shared global data, while object-oriented programming divides programs into objects that encapsulate both data and functions together and protect data from access by external functions. The document also discusses key object-oriented programming concepts like classes, encapsulation, inheritance, polymorphism, and messaging that provide benefits like code reuse and easier management of complex software projects.
the Concept of Object-Oriented ProgrammingAida Ramlan II
This document provides an introduction to object-oriented programming (OOP). It discusses key OOP concepts like enabling code reuse through inheritance and modifying existing code more easily. While OOP became popular in the 1980s, its origins date back to the Simula programming languages from the 1960s. OOP provides clear modular structures, makes code maintenance and modification easier, and offers a framework for code libraries. The document also defines important OOP terminology like classes, objects, encapsulation, abstraction, inheritance, polymorphism and distinguishes between abstraction and encapsulation.
The document provides an overview of Java programming basics. It discusses object-oriented programming concepts like classes, objects, inheritance, polymorphism and encapsulation. It also covers Java features like platform independence, security, simplicity. The document then describes Java programming basics like variables, data types, operators, expressions. It provides examples to explain concepts like declaring variables, assigning values, scope of variables.
Basics of object oriented programming interview tips for JavaMartin A
This document provides an overview of object-oriented programming concepts. It discusses the limitations of structured programming, such as difficulties with debugging, inflexibility, and high costs. Object-oriented programming addresses these issues by combining data and functions into self-contained objects. Classes are templates that are used to create objects. Key principles of OOP like encapsulation, inheritance, and polymorphism are explained. The document also covers static and non-static data, accessibility levels, and templates.
This document provides an overview of Java programming basics. It discusses object-oriented programming concepts like classes, objects, inheritance, polymorphism and encapsulation. It also covers Java features like platform independence, security, simplicity and performance. Additionally, it describes Java programming fundamentals like variables, data types, operators, expressions and input/output. The document serves as an introduction to the Java language for beginners.
This document provides an introduction to object-oriented programming and Java. It discusses the basics of OOP concepts like classes, objects, encapsulation, inheritance, polymorphism and dynamic binding. It explains the benefits of OOP like modularity, code reuse and information hiding. The document also outlines some key features of the Java programming language like platform independence, security, simplicity and performance. It positions Java as a pure object-oriented language suitable for developing both standalone applications and web applets.
C++ is a middle-level programming language developed by Bjarne Stroustrup starting in 1979 at Bell Labs. C++ runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX
Most C++ compilers don't care what extension you give your source code, but if you don't specify otherwise, many will use .cpp by default
Most frequently used and free available compiler is GNU C/C++ compiler, otherwise you can have compilers either from HP or Solaris if you have respective Operating Systems.
The document discusses object-oriented programming and several key concepts:
1) OOP organizes programs around objects and well-defined interfaces rather than procedural code. This improves modularity and reuse.
2) Objects encapsulate both data (attributes) and behaviors (methods) and communicate via messages. This mimics the real world.
3) Distributed object systems allow objects to communicate across a network. Paradigms like remote method invocation, object request brokers, and object spaces define how this is implemented.
How to Prepare for Palo Alto XDR Analyst Certification.pdfAakruthi Singh
Start here---https://shorturl.at/3sJkz---Get complete detail on XDR-Analyst exam guide to crack Palo Alto Networks Certified XDR Analyst. You can collect all information on XDR-Analyst tutorial, practice test, books, study material, exam questions, and syllabus. Firm your knowledge on Palo Alto Networks Certified XDR Analyst and get ready to crack XDR-Analyst certification. Explore all information on XDR-Analyst exam with number of questions, passing percentage and time duration to complete test.
挂科无法毕业鉴于此购买文凭【q薇1954292140】一比一原版(UPV毕业证)巴斯克大学毕业证如何办理改成绩单GPA,文凭购买,毕业证办理,文凭办理只是基础业务。【q薇1954292140】一比一还原国外大学毕业证,定制国外大学学历,制作国外大学文凭,复刻国外大学毕业证书。学位证1:1完美还原海外各大学毕业材料上的工艺:水印,阴影底纹,钢印LOGO烫金烫银,LOGO烫金烫银复合重叠。文字图案浮雕、激光镭射、紫外荧光、温感、复印防伪等防伪工艺。
【办理巴斯克大学成绩单Buy Universidad del País Vasco Transcripts】
购买日韩成绩单、英国大学成绩单、美国大学成绩单、澳洲大学成绩单、加拿大大学成绩单(q微1954292140)新加坡大学成绩单、新西兰大学成绩单、爱尔兰成绩单、西班牙成绩单、德国成绩单。成绩单的意义主要体现在证明学习能力、评估学术背景、展示综合素质、提高录取率,以及是作为留信认证申请材料的一部分。
巴斯克大学成绩单能够体现您的的学习能力,包括巴斯克大学课程成绩、专业能力、研究能力。(q微1954292140)具体来说,成绩报告单通常包含学生的学习技能与习惯、各科成绩以及老师评语等部分,因此,成绩单不仅是学生学术能力的证明,也是评估学生是否适合某个教育项目的重要依据!
Buy Universidad del País Vasco Diploma《正式成绩单论文没过》有文凭却得不到认证。又该怎么办?鉴于此,购买西班牙毕业证【q微1954292140】西班牙文凭购买,西班牙文凭购买,西班牙文凭定制,西班牙文凭补办。专业在线定制西班牙大学文凭,定做西班牙本科文凭,【q微1954292140】复制西班牙Universidad del País Vasco completion letter。在线快速补办西班牙本科毕业证、硕士文凭证书,购买西班牙学位证、巴斯克大学Offer,西班牙大学文凭在线购买。
【主营项目】
一、工作未确定,回国需先给父母、亲戚朋友看下文凭的情况,办理毕业证|办理巴斯克大学毕业证(UPV毕业证书)文凭: 买大学毕业证|买大学文凭【q薇1954292140】学位证明书如何办理申请?
二、回国进私企、外企、自己做生意的情况,这些单位是不查询毕业证真伪的,而且国内没有渠道去查询国外文凭的真假,也不需要提供真实教育部认证。鉴于此,办理巴斯克大学毕业证【q薇1954292140】西班牙学位证(UPV毕业证书)巴斯克大学毕业证书如何办理国外大学毕业证, 文凭办理, 国外文凭办理, 留信网认证
三.材料咨询办理、认证咨询办理巴斯克大学毕业证(UPV毕业证书)请加学历顾问【微信:1954292140】毕业证购买指大学文凭购买,毕业证办理和文凭办理。学院文凭定制,学校原版文凭补办,扫描件文凭定做,100%文凭复刻。经常操作的国家有美国毕业证,英国毕业证,澳洲毕业证,加拿大毕业证,以及德国毕业证,法国毕业证、荷兰毕业证、瑞士毕业证、日本毕业证、韩国毕业证、新西兰毕业证、新加坡毕业证、泰国毕业证、马来西亚毕业证等。包括了本科毕业证,硕士毕业证。
Professor Dr. Nazrul Islam, School of Business and Entrepreneurship, Independ...Dr. Nazrul Islam
Nazrul Islam is currently working as a Professor of International Business at Independent University, Bangladesh (IUB). Before joining IUB, Professor Islam served as a Pro-Vice Chancellor of Northern University Bangladesh (NUB). He began his career in 1991 in the Discipline of Business Administration at Khulna University as a Lecturer. In 2004, he joined BRAC University as an Associate Professor of Management, where he served as the Coordinator of the ‘Evening Programs’. In 2005, Dr. Islam joined North South University (NSU) as an Associate Professor of Management. Whilst, working at NSU, Dr. Islam also served as an Executive Editor of ‘North South Business Review’ and worked as an Executive Secretary for ‘South Asian Management Forum 2007’ jointly organized by NSU and AMDISA, India. In 2007, Dr. Islam joined East West University as a Professor, where he also served as a Dean of the Faculty of Business and Social Studies, Coordinator of MBA and EMBA Programs, and the Chief Editor of the ‘Journal of Business and Social Studies’. Since 2008, Prof. Islam has served as a Dean of Business Schools at various universities like East West University (EWU), State University of Bangladesh (SUB), Eastern University (EU), Uttara University (UU), Canadian University of Bangladesh (CUB) and Northern University Bangladesh. Prior to completing his MBA and PhD in International Business at Asian Institute of Technology (AIT), Thailand, he received his Bachelor’s (Honors) and Master’s degrees in Management from the University of Dhaka. Prof. Islam has published 77 research articles in international refereed journals which were abstracted and indexed by Scopus, ABDC, EBSCOhost, ProQuest, ESJI, Crossref and DOI. Prof. Islam has also published 36 research papers in local refereed journals and attended more than 20 International Conferences held in India, Nepal, Maldives, Hong Kong, South Korea, Malaysia, Thailand, Singapore, USA, and Australia. As a Panel Reviewer of South Asian Quality Assurance System (SAQS) of AMDISA, Dr. Islam reviewed ‘CFAI Business School’, ‘N.L. Dalmia Institute of Management Studies and Research’, Indus Business Academy of India and Institute of Business Administration of University of Dhaka, Bangladesh as a Peer Review Team Member for its Accreditation. Prof. Islam has supervised two PhD and three M. Phil students and is currently supervising six PhD and four M.Phil students at Bangladesh University of Professionals (BUP). Prof. Islam is serving as Chief Editor and Editorial Board Members for a number of National and International Refereed Journals. Prof. Islam has also worked as a Convener of the Organizing Committees of a number of International Conferences held in Dhaka. Prof. Islam also authored (i) Entrepreneurship Development, (ii) Modern Insurance (iii) Global Technological Change Impact on Textile and Garment Workers and co-authored (i) Organizational Behavior and (ii) Management Policy and Public Sector Management books.
鉴于此,定制休斯顿大学学位证书提升履历【q薇1954292140】原版高仿休斯顿大学毕业证(UH毕业证书)可先看成品样本【q薇1954292140】帮您解决在美国休斯顿大学未毕业难题,美国毕业证购买,美国文凭购买,【q微1954292140】美国文凭购买,美国文凭定制,美国文凭补办。专业在线定制美国大学文凭,定做美国本科文凭,【q微1954292140】复制美国The University of Houston completion letter。在线快速补办美国本科毕业证、硕士文凭证书,购买美国学位证、休斯顿大学Offer,美国大学文凭在线购买。
如果您处于以下几种情况:
◇在校期间,因各种原因未能顺利毕业……拿不到官方毕业证
◇面对父母的压力,希望尽快拿到;
◇不清楚认证流程以及材料该如何准备;
◇回国时间很长,忘记办理;
◇回国马上就要找工作,办给用人单位看;
◇企事业单位必须要求办理的
◇需要报考公务员、购买免税车、落转户口
◇申请留学生创业基金
【复刻一套休斯顿大学毕业证成绩单信封等材料最强攻略,Buy The University of Houston Transcripts】
购买日韩成绩单、英国大学成绩单、美国大学成绩单、澳洲大学成绩单、加拿大大学成绩单(q微1954292140)新加坡大学成绩单、新西兰大学成绩单、爱尔兰成绩单、西班牙成绩单、德国成绩单。成绩单的意义主要体现在证明学习能力、评估学术背景、展示综合素质、提高录取率,以及是作为留信认证申请材料的一部分。
休斯顿大学成绩单能够体现您的的学习能力,包括休斯顿大学课程成绩、专业能力、研究能力。(q微1954292140)具体来说,成绩报告单通常包含学生的学习技能与习惯、各科成绩以及老师评语等部分,因此,成绩单不仅是学生学术能力的证明,也是评估学生是否适合某个教育项目的重要依据!
A Guide for a Winning Interview June 2025Bruce Bennett
This webinar is an in-depth review of the interview process. Preparation is a key element to acing an interview. Learn the best approaches from the initial phone screen to the face-to-face meeting with the hiring manager. You will hear great answers to several standard questions, including the dreaded “Tell Me About Yourself”.
Hinjewadi, Pune, has emerged as a leading IT hub in India, hosting top tech giants and driving digital transformation across industries. With companies like Infosys, TCS, Wipro, and Cognizant establishing a strong presence, Hinjewadi offers excellent career opportunities, modern infrastructure, and a thriving tech ecosystem. This article explores the Top 11 IT Companies in Hinjewadi, highlighting their innovations, impact, and why they are key players in India's IT landscape.
Materi untuk menyusun CV dalam pelatihan persiapan memasuki dunia kerja. Dipersiapkan oleh Diana Ratri sebagai trainer pengembangan karier. Bisa digunakan sebagai alat untuk latihan secara mandiri setelag mengikuti pelatihan. Format penulisan CV yang berfokus pada kekuatan kandidat.
1. 1
INTRODUCTION TO OOP
Objective:
•Know the difference between functional programmin
and OOP
• Know basic terminology in OOP
• Know the importance of OOP
• Know four design principles of OOP
• Know OOP programming languages
3. Types of Programming
Paradigm
Imperative: Programming with an explicit
sequence of commands that update state.
Declarative: Programming by specifying
the result you want, not how to get it.
Object-Oriented: Programming by
defining objects that send messages to
each other. Objects have their own
internal (encapsulated) state and public
interfaces.
4. Types of Programming
Paradigm…
Object orientation can be:
Class-based: Objects get state and behavior
based on membership in a class.
Prototype-based: Objects get behavior from
a prototype object.
Structured: Programming with clean,
goto-free, nested control structures.
Procedural: Imperative programming
with procedure calls.
5. Types of Programming
Paradigm..
Event-Driven: Programming with emitters and
listeners of asynchronous actions.
Flow-Driven: Programming processes
communicating with each other over
predefined channels.
Functional (Applicative): Programming with
function calls that avoid any global state.
Function-Level (Combinator): Programming
with no variables at all.
6. Types of Programming
Paradigm..
Logic (Rule-based): Programming by
specifying a set of facts and rules. An
engine infers the answers to questions.
Constraint: Programming by specifying
a set of constraints. An engine finds the
values that meet the constraints.
Aspect-Oriented: Programming cross-
cutting concerns applied transparently.
7. 7
STRUCTURED vs. OO PROGRAMMING
STRUCTURED PROGRAMMING:
MAIN PROGRAM
FUNCTION 3
FUNCTION 2
GLOBAL DATA
FUNCTION 5
FUNCTION 4
FUNCTION 1
10. 10
OBJECT ORIENTED PROGRAMMING
•Objects have both data and methods
• Objects of the same class have the same data
elements and methods
• Objects send and receive messages to invoke
actions
Key idea in object-oriented:
The real world can be accurately described as a collection of
objects that interact.
11. 11
Basic terminology
Basic terminology
•object
- usually a person, place or thing (a noun)
•method
- an action performed by an object (a verb)
•attribute
- description of objects in a class
•class
- a category of similar objects (such as
automobiles)
- does not hold any values of the object’s attributes
12. 12
Example for attributes and methods
Attributes:
manufacturer’s
name
model name
year made
color
number of doors
size of engine
etc.
Methods:
Define data items
(specify
manufacturer’s name,
model, year, etc.)
Change a data item
(color, engine, etc.)
Display data items
Calculate cost
etc.
13. 13
Why OOP?
• Save development time (and cost) by reusing
code
–once an object class is created it can be used
in other applications
• Easier debugging
–classes can be tested independently
–reused objects have already been tested
14. 14
Design Principles of OOP
Four main design principles of Object-
Oriented Programming(OOP):
• Encapsulation
• Abstraction
• Polymorphism
• Inheritance
15. 15
Encapsulation
•Also known as data hiding
•Only object’s methods can modify information
in the object.
Analogy:
• ATM machine can only update accounts of one
person or object only.
16. 16
Abstraction
Focus only on the important facts about the
problem at hand
to design, produce, and describe so that it can be
easily used without knowing the details of how it
works.
Analogy:
When you drive a car, you don’t have to know how
the gasoline and air are mixed and ignited.
Instead you only have to know how to use the
controls.
Draw map
17. 17
Polymorphism
•the same word or phrase can mean different
things in different contexts
Analogy:
•In English, bank can mean side of a river or a
place to put money
•move -
19. 19
Inheritance
• Inheritance—a way of organizing classes
• Term comes from inheritance of traits like eye
color, hair color, and so on.
• Classes with properties in common can be
grouped so that their common properties are
only defined once.
• Superclass – inherit its attributes & methods to
the subclass(es).
• Subclass – can inherit all its superclass
attributes & methods besides having its own
unique attributes & methods.
20. 20
An Inheritance Hierarchy
Vehicle
Automobile Motorcycle Bus
Sedan Sports Car School Bus
Luxury Bus
What properties does each vehicle inherit from the types
of vehicles above it in the diagram?
Superclass
Subclasses