From f08ce7f24f27eddf33fbf5de5683b6deacb0275c Mon Sep 17 00:00:00 2001 From: TJ Date: Thu, 16 Jan 2025 10:57:48 +0530 Subject: [PATCH] vault backup: 16-01-2025 10:57:48 {{time}} 3 --- .../Subjects/OOP/IMG-20250116105746429.png | Bin 0 -> 38285 bytes .../object oriented programming Lecture 3.md | 226 ++++++++++++++++++ .../Object-Oriented Programming (OOP).md | 1 + 3 files changed, 227 insertions(+) create mode 100644 Publish/Btech Fourth Semester/Subjects/OOP/attachments/Publish/Btech Fourth Semester/Subjects/OOP/IMG-20250116105746429.png create mode 100644 Publish/Btech Fourth Semester/Subjects/OOP/object oriented programming Lecture 3.md diff --git a/Publish/Btech Fourth Semester/Subjects/OOP/attachments/Publish/Btech Fourth Semester/Subjects/OOP/IMG-20250116105746429.png b/Publish/Btech Fourth Semester/Subjects/OOP/attachments/Publish/Btech Fourth Semester/Subjects/OOP/IMG-20250116105746429.png new file mode 100644 index 0000000000000000000000000000000000000000..422636b85e766fd911c61849e27c366a12c3a898 GIT binary patch literal 38285 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 LR+jpVH1hjjq9kiw literal 0 HcmV?d00001 diff --git a/Publish/Btech Fourth Semester/Subjects/OOP/object oriented programming Lecture 3.md b/Publish/Btech Fourth Semester/Subjects/OOP/object oriented programming Lecture 3.md new file mode 100644 index 0000000..a5718eb --- /dev/null +++ b/Publish/Btech Fourth Semester/Subjects/OOP/object oriented programming Lecture 3.md @@ -0,0 +1,226 @@ +--- +Title: object oriented programming Lecture 3 +Status: +marker: +tags: +Date: 2025.01.16 +Time: 10:09 +--- +# Functions + +## Why Functions? + +Functions help in structuring code by breaking down tasks into manageable parts. For example, consider summing a range of numbers with a loop: + +### Without a Function: + +```javascript +// Summing numbers from 1 to 10 +let sum1 = 0; +for (let i = 1; i <= 10; i++) { + sum1 += i; +} +console.log(sum1); + +// Summing numbers from 20 to 30 +let sum2 = 0; +for (let i = 20; i <= 30; i++) { + sum2 += i; +} +console.log(sum2); +``` + +### Using a Function: + +```javascript +function sumRange(start, end) { + let sum = 0; + for (let i = start; i <= end; i++) { + sum += i; + } + return sum; +} + +console.log(sumRange(1, 10)); // Output: 55 +console.log(sumRange(20, 30)); // Output: 275 +``` + +**Key Benefit**: The `sumRange` function abstracts the logic for summing a range of numbers, making the code cleaner, reusable, and easier to understand. + +--- + +## Abstraction of Methods/Functions + +Functions act as **black boxes**: + +- **Concealment**: The inner workings are hidden from the user. +- **Revealing only necessary parts**: Users interact with functions through their interface (parameters and return values). + +### Black Box Ideation + +- Example: When using a function like `sumRange`, we don’t need to know how the summation works internally—we only need to provide the range. + +--- + +## Benefits of Methods/Functions + +1. **Write Once, Reuse Anywhere** + - Code becomes reusable, reducing redundancy. +2. **Concealment of Code** + - Only the function’s interface is exposed, hiding the implementation details. +3. **Reduce Complexity** + - Large problems are broken into smaller, manageable tasks. +4. **Stepwise Refinement** + - Tasks can be modularized and refined incrementally. + +# Method Structure +![[IMG-20250116105746429.png]] + +## Return Statement +A return statement is required for a value returning method. The methhod shown below in a logically correct has a compiler error because? +```java +public static int sign(int n){ + if(n>0) + return 1; + else if(n==0) + return 0; + else if(n<0) + return -1; +} +``` +should be +```java +public static int sign(int n){ + if(n>0) + return 1; + else if(n==0) + return 0; + else + return -1; +} +``` +## Passing parameters +There are two types of parameter passing. +### Pass by Value +- The caller and callee operate on two different variables which are copies of each other +- Any changes to one variable don't modify the other +- In java everything is strictly **Pass By Value** +### Pass by reference +- The caller rand the callee operate on the **Same Object** +- Arrays are pass by reference by default + +In Java there is no pass by reference because it is made with the idea of programming internet. The reference operators is mostly why most of the vulnerabilities exist. +Here’s the completed snippet with examples: + +--- + +## Scopes of Variables + +In programming, the **scope** of a variable defines where it can be accessed or modified. +- **Local Scope**: Variables declared inside a function or block and accessible only within that function or block. +- **Global Scope**: Variables declared outside of all functions and accessible anywhere in the program. +- **Block Scope** (in modern languages like Java, JavaScript): Variables declared inside a block `{}` using `let`, `const`, or `var`. + +Example in Java: + +```java +public class VariableScope { + // Global variable + static int globalVar = 10; + + public static void main(String[] args) { + int localVar = 5; // Local variable + System.out.println("Global Variable: " + globalVar); + System.out.println("Local Variable: " + localVar); + { + int blockVar = 20; // Block variable + System.out.println("Block Variable: " + blockVar); + } + // System.out.println(blockVar); // Error: blockVar is not accessible here + } +} +``` + +--- + +## Overloading Methods +**Method Overloading** allows multiple methods in a class to have the same name but different parameter lists (function signatures). +### Rules for Overloading: +1. Methods must differ in the number of parameters, types of parameters, or both. +2. Overloading cannot differ only by the return type. +Example in Java: +```java +public class MethodOverloading { + // Method with one parameter + public static int add(int a) { + return a + 10; + } + + // Overloaded method with two parameters + public static int add(int a, int b) { + return a + b; + } + + // Overloaded method with different parameter types + public static double add(double a, double b) { + return a + b; + } + + public static void main(String[] args) { + System.out.println(add(5)); // Calls add(int a), Output: 15 + System.out.println(add(5, 10)); // Calls add(int a, int b), Output: 15 + System.out.println(add(5.5, 4.5)); // Calls add(double a, double b), Output: 10.0 + } +} +``` + +--- + +## Ambiguous Invocations + +Ambiguous invocation occurs when the compiler cannot determine which overloaded method to call because multiple methods match the provided arguments equally well. This leads to a **compiler error**. + +### Causes of Ambiguity: + +1. **Type Conversion**: When arguments can be implicitly converted into multiple types. +2. **Variable Arguments**: When a method with varargs matches multiple overloaded methods. + +### Example in Java: + +```java +public class AmbiguousInvocation { + // Overloaded methods + public static void printValue(int a, double b) { + System.out.println("Method with int and double called."); + } + + public static void printValue(double a, int b) { + System.out.println("Method with double and int called."); + } + + public static void main(String[] args) { + // This call causes ambiguity because both methods match equally + // printValue(10, 20); // Compiler error: ambiguous method call + } +} +``` + +### Resolving Ambiguity: + +1. **Explicit Casting**: Help the compiler by explicitly casting arguments. + + ```java + printValue(10, 20.0); // Calls printValue(int, double) + printValue(10.0, 20); // Calls printValue(double, int) + ``` + +2. **Avoid Overlapping Signatures**: Design overloads carefully to avoid ambiguous cases. + +--- + +Ambiguous invocations highlight the importance of clear method signatures and intentional casting when dealing with overloaded methods. + +### References + +- **Date**: 2025.01.16 +- **Time**: 10:09 \ No newline at end of file diff --git a/Publish/Btech Fourth Semester/Subjects/Object-Oriented Programming (OOP).md b/Publish/Btech Fourth Semester/Subjects/Object-Oriented Programming (OOP).md index 876c96f..8088c78 100644 --- a/Publish/Btech Fourth Semester/Subjects/Object-Oriented Programming (OOP).md +++ b/Publish/Btech Fourth Semester/Subjects/Object-Oriented Programming (OOP).md @@ -15,3 +15,4 @@ Time: 03:43 ## - 30-12-2024 | 8:00 AM - 9:00 AM (Lecture: CR 506) [[Object Oriented Programming Lecture 1]] ## - 02-01-2025 | 10:00 AM - 11:00 AM (Lecture: CR 506) [[Object Oriented Programming Lecture 2]] ## - 03-01-2025 | 2:00 PM - 4:00 PM (Computer Lab: CL 503) [[Object Oriented Programming Computer Lab 1]] +## - 16-01-2025 | 10:08 ( Lecture : CR 506 ) [[object oriented programming Lecture 3]] \ No newline at end of file