OOP FINALS

5.0(1)
Studied by 59 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/103

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 12:51 PM on 6/18/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

104 Terms

1
New cards

Object Oriented Programing

  • It is a programming paradigm that revolves around the use of objects

  • It organizes code into objects that combine data and behavior, making problems easier to understand and maintain

2
New cards

Data type

  • it is a collection of values that share common properties and a purpose in a program

3
New cards

Abstract data type

  • It focuses on what operations are allowed on the data, not how the data is stored internally

  • Examples are stack, natural numbers, booleans

4
New cards

Precondition

  • It is when an operation called, certain condition must already be true before it runs

5
New cards

Postcondition

  • It is when an operation is called, after it runs, it must guarantee a valid result

6
New cards

Modularity

  • It means breaking a program into separate, manageable parts called modules

7
New cards

Procedural Modularity

  • A type of modularity that is organized around functions or procedures

  • It is fine grained and low level

  • It is also not enough for large scale systems on its own

8
New cards

Boxing Modularity

  • This type of modularity groups code behind clear boundaries

  • Visibility can be controlled using imports and exports

  • Flexible in size and structure

9
New cards

Data Centered Modularity

  • it is a type of modularity that is built around data that represents one clear concept

  • It is closely tied to abstract data types

  • It is common in object oriented design

10
New cards

Reusability

  • It means building software in a way that lets us reuse code that is already written, tested, and documented

11
New cards

Method lookup

  • It is when an object receives a message and selects the most appropriate operation to handle it

12
New cards

Class

  • It is an organizational unit of an Object Oriented design and program

  • These are user-defined data types that acts as the blueprint for individual objects, attributes and methods.

13
New cards

state

  • Describes the properties or data an object holds and usually expressed as nouns

14
New cards

Behavior

  • Describes the actions an object can perform and usually expressed as verbs

15
New cards

Phenomenon

  • It is a specific thing that exists, either in the real world or in the mind

  • They become objects in OOP

16
New cards

Concept

  • It is a generalized idea formed by grouping similar phenomena based on shared properties

  • They become Classes in OOP

17
New cards

Name, Intension, Extension

Three parts of concept

18
New cards

Name

  • It is the label we use to refer to the concept

19
New cards

Intension

  • It is the set of properties that define what the concept is

20
New cards

Extension

  • It is the collection of phenomena that belong to the concept

21
New cards

Aristotelian View

  • It is a way to understand concept and it states that “concepts have clear defining properties. An object either belongs or does not belong to the concept”

22
New cards

Fuzzy View

  • It is another way to understand concepts and it states that “concepts are based on typical examples. Boundaries are not always clear”

23
New cards

Classification

  • It is to create a concept by grouping similar phenomena

  • It starts from many phenomena

  • Forms a single concept

  • Uses shared defining properties

24
New cards

Exemplification

  • It is to focus on a specific phenomenon that belongs to a concept

  • It starts from a concept

  • It identifies concrete examples

  • Selects phenomena within that concept

25
New cards

Aggregation, Decomposition

Two ways of forming new concepts from existing ones based on parts and wholes

26
New cards

Aggregation

  • it builds a concept by combining parts

  • Focuses on the whole

  • Parts exists independently

27
New cards

Decomposition

  • Breaks concepts into parts

  • Focuses on the structure

  • Reveals what the whole is made of

28
New cards

Generalization, Specialization

Ways to form new concepts from existing ones by changing how broad or specific they are

29
New cards

Generalization

  • Forms a broader concept

  • Combines shared properties

  • Moves upward in the hierarchy

30
New cards

Specialization

  • Forms a narrower concept

  • Adds or restricts properties

  • Moves downward in the hierarchy

31
New cards

Object

  • It is an instance of a class

  • It is a runtime entity that combines data and behavior defined by its class

  • They are created based on the blue prints provided by the class

32
New cards

Attributes

  • It is a piece of data that is associated with a particular class or object

  • They represent the state of an object and describe its characteristics or properties

33
New cards

Method

  • These are functions inside the class that perform certain actions

  • Set of instructions grouped together within a code block

34
New cards

Encapsulation, Inheritance, Polymorphism, Abstraction

Main Principles of OOP

35
New cards

Encapsulation

  • This is a principle of OOP that states that all important information is contained inside an object and only selected information is exposed

36
New cards

Abstraction

  • It is the process of hiding unnecessary information from a user while displaying essential information that is valuable to them

37
New cards

Inheritance

  • Classes can reuse code from other classes. Relationships and subclasses between objects can be assigned, enabling developers to reuse common logic while still maintaining a unique hierarchy

  • This property of OOP forces a more thorough data analysis, reduces development time and ensure a higher level of accuracy

38
New cards

Polymorphism

  • Many forms

  • Objects are assigned to share behaviors and they can take on more than one form

  • the program will determine which meaning or usage is necessary for each execution of that object from a parent class, reducing the need to duplicate code.

  • This principle of OOP allows different types of objects to pass through the same interface

39
New cards

C#

  • it is a beginner-friendly, object-oriented programming language that has a strong industry demand and can be scaled for large systems

  • It runs on .NET framework and executes languages by compiling them and converting them into machine-readable code

40
New cards

C# statements

  • It can consist of a single line of code that ends in a semi-colon, or a series of single-line statements in a block that is enclosed in curly brackets

41
New cards

Constants

  • These are immutable values which are known at compile time and do not change for the life of the program

42
New cards

Message Passing

  • A runtime behavior in OOP

  • It is when objects communicate through function calls

43
New cards

Action

  • Are usually implemented as procedure or function calls

  • Always directed at an object

  • May take parameters

  • Triggered by Messages

44
New cards

Class, Object, Attributes, Methods

Structure of OOP

45
New cards

Data Hiding

  • it is when objects protect their internal data, improving security and control

46
New cards

High cohesion

  • A characteristics of a good class where the class represents one clear and useful concept and does that job well

47
New cards

Low coupling

  • It is a quality of a good class where a class interacts with other classes only when necessary to do its job

48
New cards

main()

  • Entry point of a C# program

49
New cards

Reduced complexity

  • This is a benefit of OOP where large problems are broken down into smaller objects, each with a clear responsibilty

50
New cards

Modifiability

  • It is a benefit of OOP where internal changes inside a class do not affect other parts of the program

51
New cards

{}

  • Markers of the beginning and the end of a chuck of C# code

52
New cards

Using

  • It is used to import namespaces and use classes of it

53
New cards

Namespace

  • It is used to organize codes

  • A container for classes and other namespaces

54
New cards

;

  • Used to terminated a C# statement

55
New cards

Declaration statement

  • this introduces a new variable or constant

  • It can optionally assign a value to a variable

56
New cards

Method Signature

  • It consists of the name of the method and any method parameters

57
New cards

Math.Abs()

  • Returns the absolute value of a number

58
New cards

Math.Pow()

  • Calculates a number raised to the power of another number

59
New cards

Math.Sqrt()

  • Returns the square root of a number.

60
New cards

Math.Round()

  • Rounds a decimal number to the nearest integer.

61
New cards

String.Length()

  • Returns the length of a string

62
New cards

String.ToUpper

  • Converts a string to uppercase

63
New cards

String.ToLower

  • Converts a string to lowercase

64
New cards

String.Concat()

  • Concatenates two or more strings.

65
New cards

Equals()

  • Used to make comparisons between two strings

66
New cards

String.Substring()

  • Extracts a substring from a string based on the specified start index and length

67
New cards

Custom Method

  • It is a user-defined method that contains specific set of code instructions

  • Must be declared within a class or struct

68
New cards

Method Overloading

  • this allows you to define multiple methods with the same name but different parameter lists within the same class.

69
New cards

Modifiers

  • controls the access levels and visibility of class members (fields, properties, methods, etc.)

70
New cards

Public, Private, Protected, Internal

Commonly used modifiers

71
New cards

Private

  • The code is only accessible within the same class

72
New cards

Public

  • The code is accessible for all classes

73
New cards

Protected

  • The code is accessible within the same class, or in a class that is inherited from that class.

74
New cards

Internal

  • The code is only accessible within its own assembly, but not from another assembly.

75
New cards

Method

  • in programming refers to a set of instructions grouped together within a code block.

76
New cards

Main method

  • serves as the starting point for any C# program and is initiated by the common language runtime (CLR) upon program launch.

77
New cards

Method Signature

  • Methods are declared in a class, struct, or interface by specifying the access level such as public or private, optional modifiers such as abstract or sealed, the return value, the name of the method, and any method parameters.

78
New cards

Custom Method

  • is a user-defined method that contains a specific set of code instructions.

79
New cards

Method Overloading

  • in C# allows you to define multiple methods with the same name but different parameter lists within the same class

  • This allows the performance of similar operations with different types or numbers of parameters.

80
New cards

Array

  • Is declared by specifying the type of its element

  • type [ ] array name;

81
New cards

Single-dimensional array

  • is a sequence of like elements.

  • You access an element via its index.

  • The index is its ordinal position in the sequence.

82
New cards

Two dimensional array

  • arrays that have more than one dimension

  • initialized like “type [ , ] array name”

83
New cards

Jagged Array

  • Is an array whose elements are arrays, possibly of different sizes

  • is sometimes called an "array of arrays."

  • Its elements are reference types and are initialized to null

84
New cards

ArrayList

  • stores elements of multiple data types whose size can be changed dynamically.

85
New cards

Linked List

  • is a linear data structure where each element (node) in the list is a separate object containing a data element and a reference (link) to the next node in the sequence

86
New cards

Modifiers

  • control the access levels and visibility of class members (fields, properties, methods, etc.) within a C# program.

87
New cards

public

  • The code is accessible for all classes

88
New cards

Private

  • The code is only accessible within the same class

89
New cards

Protected

  • The code is accessible within the same class, or in a class that is inherited from that class

90
New cards

Internal

  • The code is only accessible within its own assembly, but not from another assembly

91
New cards

Encapsulation

  • Means protecting the internal data of a class and controlling how other parts of the program can access or change it

  • It is commonly implemented using Private fields, Public properties, Public methods that control behavior

92
New cards

Abstraction

  • Means showing only the important features of an object while hiding unnecessary details

  • Implemented using abstract classes and Interfaces

93
New cards

Interface

  • Defines a set of actions that a class must implement

94
New cards

Inheritance

  • Allows one class to reuse the fields and methods of another class.

95
New cards

Polymorphism

  • Allows different classes to respond to the same method call in different ways

96
New cards

Class

  • Defines the structure of the code

97
New cards

This

  • Is a keyword that refers to the current object

  • It is commonly used when a field and a parameter have the same name

98
New cards

Method Overriding

  • This means that a child class changes the behavior of a parent method

99
New cards

Static Class

  • is used without creating an object

  • it cannot be instantiated and only contains static members

100
New cards

Sealed Class

  • a class that cannot be inherited