Constructor Chaining
يتم استدعاء عدة Constructors من نفس الصف أو من صف الأب (parent class) باستخدام this() لاستدعاء Constructors داخل نفس الصف، أو super() لاستدعاء Constructors في الصف الأب.
مثال :
public class Employee {
// Constructor الافتراضي
Employee() {
this(2023); // استدعاء Constructor مع معلمة واحدة
System.out.println("In Default Constructor Of Employee Class");
}
// Constructor مع معلمة واحدة
Employee(int id) {
this("Ankush"); // استدعاء Constructor مع معلمة نصية
System.out.println("In Parameterized Constructor with Integer Parameter: " + id);
}
// Constructor مع معلمة نصية
Employee(String name) {
System.out.println("In Parameterized Constructor With String Parameter: " + name);
}
public static void main(String[] args) {
Employee emp = new Employee();
}
}الإخراج:
mathematica
In Parameterized Constructor With String Parameter: Ankushيُمكن تحميل Constructors بنفس اسم الصف مع عدد مختلف أو نوع مختلف من المعلمات.
In Parameterized Constructor with Integer Parameter: 2023
In Default Constructor Of Employee Class
Constructor Overloading
مثال:
public class Student {
private String name;
private int age;
// Constructor الافتراضي
public Student() {
name = "Unknown";
age = 0;
}
// Constructor مع معلمة واحدة
public Student(String name) {
this.name = name;
age = 0;
}
// Constructor مع معلمتين
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public void display() {
System.out.println("Name: " + name + ", Age: " + age);
}
}اعتقد كافيي بس جان ضروري انزلهن لان هذا ماده الامتحان مال باجر
اذا سمحت فرصه الي بعشوي انزل امثله اكثر
هذا فقط امثله الملزمه
💚🌿
اذا غلطت بشي نبهوني لان تركيزي حاليا بالسالب
💋2❤1🔥1🥰1🌚1
سؤال المختبر القادم للهياكل علوم صباحي /
//
اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4
وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي
ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر المجموعه ثم طباعتها واجراء 5 عمليات عليها ويبقى يطلب من المستخدم اجراء عمليات لحين طلب المستخدم الخروج من العمليات
🤯5🔥1
JAVA OOP
سؤال المختبر القادم للهياكل علوم صباحي / // اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4 وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر…
الكود موجود بس انتضر موافقه السلطات العليا علمود انزله😂😂
لا بس اتاكد منه اكثر وانزله
تقريبا صار
450 سطر
لا بس اتاكد منه اكثر وانزله
تقريبا صار
450 سطر
😱6🔥2🗿2👎1🤣1😭1
JAVA OOP
سؤال المختبر القادم للهياكل علوم صباحي / // اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4 وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر…
import java.util.Scanner;
public class hmd{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean exit = false;
while (!exit) {
System.out.println("اختر نوع المصفوفة: 1. أحادية 2. ثنائية 3. ثلاثية 4. مثلثية 5. خروج");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println(" enter size :");
int size = scanner.nextInt();
int[] array = new int[size];
System.out.println("أدخل العناصر:");
for (int i = 0; i < size; i++) {
array[i] = scanner.nextInt();
}
printArray(array);
arrayD1(array);
break;
case 2:
System.out.println(" enter r:");
int rows = scanner.nextInt();
System.out.println(" enter c:");
int cols = scanner.nextInt();
int[][] matrix = new int[rows][cols];
System.out.println("أدخل العناصر:");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
matrix[i][j] = scanner.nextInt();
}
}
printArray(matrix);
arrayD2(matrix);
break;
case 3:
System.out.println(" enter l :");
int layers = scanner.nextInt();
System.out.println(" enter r :");
int threesRows = scanner.nextInt();
System.out.println(" enter c :");
int threesCols = scanner.nextInt();
int[][][] threeDMatrix = new int[layers][threesRows][threesCols];
System.out.println("أدخل العناصر:");
for (int i = 0; i < layers; i++) {
for (int j = 0; j < threesRows; j++) {
for (int k = 0; k < threesCols; k++) {
threeDMatrix[i][j][k] = scanner.nextInt();
}
}
}
printArray(threeDMatrix);
arrayD3(threeDMatrix);
break;
case 4:
int[][] triangularMatrix = new int[4][4];
System.out.println("اختر الجزء: 1. علوي 2. سفلي");
int part = scanner.nextInt();
if (part == 1) {
System.out.println("أدخل العناصر للجزء العلوي:");
for (int i = 0; i < 4; i++) {
for (int j = i; j < 4; j++) {
triangularMatrix[i][j] = scanner.nextInt();
}
}
} else if (part == 2) {
System.out.println("أدخل العناصر للجزء السفلي:");
for (int i = 0; i < 4; i++) {
for (int j = 0; j <= i; j++) {
triangularMatrix[i][j] = scanner.nextInt();
}
}
} else {
System.out.println("اختيار غير صالح.");
break;
}
printArray(triangularMatrix);
arrayTriangular(triangularMatrix);
break;
case 5:
exit = true;
System.out.println("تم الخروج من البرنامج.");
break;
default:
System.out.println("اختيار غير صالح.");
}
}
}
JAVA OOP
سؤال المختبر القادم للهياكل علوم صباحي / // اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4 وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر…
private static void arrayD1(int[] array) {
boolean backToMenu = false;
while (!backToMenu) {
printArray(array);
System.out.println("اختر عملية:");
System.out.println("1. sum ");
System.out.println("2. avg ");
System.out.println("3. max ");
System.out.println("4. min ");
System.out.println("5. ضرب العناصر في 2");
System.out.println("6. العودة إلى القائمة الرئيسية");
int operation = new Scanner(System.in).nextInt();
switch (operation) {
case 1:
System.out.println(" sum : " + sum(array));
break;
case 2:
System.out.println(" avg : " + average(array));
break;
case 3:
System.out.println(" max : " + max(array));
break;
case 4:
System.out.println(" min : " + min(array));
break;
case 5:
multiplyByTwo(array);
break;
case 6:
backToMenu = true;
break;
default:
System.out.println("اختيار غير صالح!");
}
}
}
private static void arrayD2(int[][] matrix) {
boolean backToMenu = false;
while (!backToMenu) {
printArray(matrix);
System.out.println("اختر عملية:");
System.out.println("1. sum ");
System.out.println("2. avg ");
System.out.println("3. max ");
System.out.println("4. min ");
System.out.println("5. ضرب العناصر في 2");
System.out.println("6. العودة إلى القائمة الرئيسية");
int operation = new Scanner(System.in).nextInt();
switch (operation) {
case 1:
System.out.println(" sum : " + sum(matrix));
break;
case 2:
System.out.println(" avg : " + average(matrix));
break;
case 3:
System.out.println(" max : " + max(matrix));
break;
case 4:
System.out.println(" min : " + min(matrix));
break;
case 5:
multiplyByTwo(matrix);
break;
case 6:
backToMenu = true;
break;
default:
System.out.println("اختيار غير صالح!");
}
}
}
private static void arrayD3(int[][][] matrix) {
boolean backToMenu = false;
while (!backToMenu) {
printArray(matrix);
System.out.println("اختر عملية:");
System.out.println("1. sum ");
System.out.println("2. avg ");
System.out.println("3. max ");
System.out.println("4. min ");
System.out.println("5. ضرب العناصر في 2");
System.out.println("6. العودة إلى القائمة الرئيسية");
int operation = new Scanner(System.in).nextInt();
switch (operation) {
case 1:
System.out.println(" sum : " + sum(matrix));
break;
case 2:
System.out.println(" avg : " + average(matrix));
break;
case 3:
System.out.println(" max : " + max(matrix));
break;
case 4:
System.out.println(" min : " + min(matrix));
break;
case 5:
multiplyByTwo(matrix);
break;
case 6:
backToMenu = true;
break;
default:
System.out.println("اختيار غير صالح!");
}
}
}private static void arrayTriangular(int[][] matrix) {
boolean backToMenu = false;
while (!backToMenu) {
printArray(matrix);
System.out.println("اختر عملية:");
System.out.println("1. sum ");
System.out.println("2. avg ");
System.out.println("3. max ");
System.out.println("4. min ");
System.out.println("5. ضرب العناصر في 2");
System.out.println("6. العودة إلى القائمة الرئيسية");
int operation = new Scanner(System.in).nextInt();
switch (operation) {
case 1:
System.out.println(" sum : " + sum(matrix));
break;
case 2:
System.out.println(" avg : " + average(matrix));
break;
case 3:
System.out.println(" max : " + max(matrix));
break;
case 4:
System.out.println(" min : " + min(matrix));
break;
case 5:
multiplyByTwo(matrix);
break;
case 6:
backToMenu = true;
break;
default:
System.out.println("اختيار غير صالح!");
}
}
}
private static int sum(int[] array) {
int total = 0;
for (int i = 0; i < array.length; i++) {
total += array[i];
}
return total;
}
private static double average(int[] array) {
return (double) sum(array) / array.length;
}
private static int max(int[] array) {
int max = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] > max) {
max = array[i];
}
}
return max;
}
private static int min(int[] array) {
int min = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] < min) {
min = array[i];
}
}
return min;
}
private static int sum(int[][] matrix) {
int total = 0;
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
total += matrix[i][j];
}
}
return total;
}
private static double average(int[][] matrix) {
int count = 0;
int total = sum(matrix);
for (int i = 0; i < matrix.length; i++) {
count += matrix[i].length;
}
return (double) total / count;
}
private static int max(int[][] matrix) {
int max = matrix[0][0];
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
if (matrix[i][j] > max) {
max = matrix[i][j];
}
}
}
return max;
}
private static int min(int[][] matrix) {
int min = matrix[0][0];
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
if (matrix[i][j] < min) {
min = matrix[i][j];
}
}
}
return min;
}
private static int sum(int[][][] matrix) {
int total = 0;
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
for (int k = 0; k < matrix[i][j].length; k++) {
total += matrix[i][j][k];
}
}
}
return total;
}
private static double average(int[][][] matrix) {
int count = 0;
int total = sum(matrix);
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
count += matrix[i][j].length;
}
}
return (double) total / count;
}🔥1
private static int max(int[][][] matrix) {
int max = matrix[0][0][0];
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
for (int k = 0; k < matrix[i][j].length; k++) {
if (matrix[i][j][k] > max) {
max = matrix[i][j][k];
}
}
}
}
return max;
}
private static int min(int[][][] matrix) {
int min = matrix[0][0][0];
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
for (int k = 0; k < matrix[i][j].length; k++) {
if (matrix[i][j][k] < min) {
min = matrix[i][j][k];
}
}
}
}
return min;
}
private static void printArray(int[] array) {
System.out.print("المصفوفة: ");
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
System.out.println();
}
private static void printArray(int[][] matrix) {
System.out.println("المصفوفة:");
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
}
private static void printArray(int[][][] matrix) {
System.out.println("المصفوفة:");
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
for (int k = 0; k < matrix[i][j].length; k++) {
System.out.print(matrix[i][j][k] + " ");
}
System.out.println();
}
System.out.println();
}
}
private static void multiplyByTwo(int[] array) {
for (int i = 0; i < array.length; i++) {
array[i] *= 2;
}
printArray(array);
}
private static void multiplyByTwo(int[][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
matrix[i][j] *= 2;
}
}
printArray(matrix);
}
private static void multiplyByTwo(int[][][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
for (int k = 0; k < matrix[i][j].length; k++) {
matrix[i][j][k] *= 2;
}
}
}
printArray(matrix);
}
}
JAVA OOP
سؤال المختبر القادم للهياكل علوم صباحي / // اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4 وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر…
Telegram
JAVA OOP
import java.util.Scanner;
public class hmd{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean exit = false;
while (!exit) {
System.out.println("اختر نوع المصفوفة: 1. أحادية…
public class hmd{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean exit = false;
while (!exit) {
System.out.println("اختر نوع المصفوفة: 1. أحادية…
JAVA OOP
سؤال المختبر القادم للهياكل علوم صباحي / // اكتب برنامج يقرء مصفوفه احاديه ومصفوفة ثنائيه ومصفوفه ثلاثيه ومصفوفه مثلثه تكون 4*4 وتكون بيها عمليات خاصه للجزء العلوي عمليات خاصه للجزء السفلي ثم يطلب من المستخدم اختيار نوع المصفوفه ووحجم المصفوفه وعناصر…
وجان نخلص المصفوفات هذا اخر مختبر ناخذها
👏1
واجب الهياكل (مختبر) ,/علوم صباحي
البرنامج المطلوب:
١-قراءة خيط رمزي
٢-loop لكل الدوال المراد تطبيقها على الخيط الرمزي
٣- ادخال رقم الاختيار
٤-switch لتحديد العمليه المراد تنفيذها بناءا على الخيار المدخل
٥-من ضمن الخيارات خيار الخروج من البرنامج
البرنامج المطلوب:
١-قراءة خيط رمزي
٢-loop لكل الدوال المراد تطبيقها على الخيط الرمزي
٣- ادخال رقم الاختيار
٤-switch لتحديد العمليه المراد تنفيذها بناءا على الخيار المدخل
٥-من ضمن الخيارات خيار الخروج من البرنامج
👏1
import java.util.Locale;
import java.util.Scanner;
public class hmd2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a string: ");
String input = scanner.nextLine();
boolean running = true;
while (running) {
System.out.println("\nChoose an operation:");
System.out.println("1. Get a character at a specific index (charAt)");
System.out.println("2. Get the length of the string (length)");
System.out.println("3. Create a substring from a start index (substring)");
System.out.println("4. Create a substring from start to end indices (substring)");
System.out.println("5. Compare the string with another string (equals)");
System.out.println("6. Check if the string is empty (isEmpty)");
System.out.println("7. Concatenate strings (concat)");
System.out.println("8. Replace a character with another (replace)");
System.out.println("9. Split the string into words (split)");
System.out.println("10. Split the string into words with a limit (split with limit)");
System.out.println("11. Get the string from the constant pool (intern)");
System.out.println("12. Find the index of a character (indexOf)");
System.out.println("13. Find the index of a character from a specific position (indexOf with start index)");
System.out.println("14. Find the index of a substring (indexOf substring)");
System.out.println("15. Find the index of a substring from a specific position (indexOf substring with start index)");
System.out.println("16. Convert the string to lowercase (toLowerCase)");
System.out.println("17. Convert the string to lowercase with locale (toLowerCase with Locale)");
System.out.println("18. Convert the string to uppercase (toUpperCase)");
System.out.println("19. Convert the string to uppercase with locale (toUpperCase with Locale)");
System.out.println("20. Trim whitespace from the string (trim)");
System.out.println("21. Exit");
System.out.print("Enter your choice: ");
int choice = scanner.nextInt();
scanner.nextLine();
JAVA OOP
واجب الهياكل (مختبر) ,/علوم صباحي البرنامج المطلوب: ١-قراءة خيط رمزي ٢-loop لكل الدوال المراد تطبيقها على الخيط الرمزي ٣- ادخال رقم الاختيار ٤-switch لتحديد العمليه المراد تنفيذها بناءا على الخيار المدخل ٥-من ضمن الخيارات خيار الخروج من البرنامج
switch (choice) {
case 1:
System.out.print("Enter the index: ");
int index = scanner.nextInt();
if (index >= 0 && index < input.length()) {
System.out.println("Character at index " + index + " is: " + input.charAt(index));
} else {
System.out.println("Invalid index.");
}
break;
case 2:
System.out.println("Length of the string: " + input.length());
break;
case 3:
System.out.print("Enter the starting index: ");
int start = scanner.nextInt();
if (start >= 0 && start < input.length()) {
System.out.println("Substring: " + input.substring(start));
} else {
System.out.println("Invalid start index.");}
break;
case 4:
System.out.print("Enter the starting index: ");
start = scanner.nextInt();
System.out.print("Enter the ending index (exclusive): ");
int end = scanner.nextInt();
if (start >= 0 && end <= input.length() && start < end) {
System.out.println("Substring: " + input.substring(start, end));
} else {
System.out.println("Invalid indices.");
}
break;
case 5:
System.out.print("Enter another string to compare: ");
String another = scanner.nextLine();
System.out.println("Strings are equal: " + input.equals(another));
break;
case 6:
System.out.println(input.isEmpty() ? "The string is empty." : "The string is not empty.");
break;
case 7:
System.out.print("Enter another string to concatenate: ");
String secondInput = scanner.nextLine();
System.out.println("Concatenated string: " + input.concat(secondInput));
break;
case 8:
System.out.print("Enter the character to replace: ");
char oldChar = scanner.next().charAt(0);
System.out.print("Enter the new character: ");
char newChar = scanner.next().charAt(0);
input = input.replace(oldChar, newChar);
System.out.println("Updated string: " + input);
break;
case 9:
String[] words = input.split(" ");
System.out.println("Words:");
for (String word : words) {
System.out.println(word);
}
break;
case 10:
System.out.print("Enter the maximum number of parts: ");
int limit = scanner.nextInt();
String[] parts = input.split(" ", limit);
System.out.println("Parts:");
for (String part : parts) {
System.out.println(part);
}
break;
case 11:
input = input.intern();
System.out.println("The string is now stored in the constant pool.");
break;
JAVA OOP
واجب الهياكل (مختبر) ,/علوم صباحي البرنامج المطلوب: ١-قراءة خيط رمزي ٢-loop لكل الدوال المراد تطبيقها على الخيط الرمزي ٣- ادخال رقم الاختيار ٤-switch لتحديد العمليه المراد تنفيذها بناءا على الخيار المدخل ٥-من ضمن الخيارات خيار الخروج من البرنامج
case 12:
System.out.print("Enter the character to search for: ");
char searchChar = scanner.next().charAt(0);
int position = input.indexOf(searchChar);
System.out.println(position != -1 ? "Found at position: " + position : "Character not found.");
break;
case 13:
System.out.print("Enter the character to search for: ");
searchChar = scanner.next().charAt(0);
System.out.print("Enter the starting index for the search: ");
int fromIndex = scanner.nextInt();
position = input.indexOf(searchChar, fromIndex);
System.out.println(position != -1 ? "Found at position: " + position : "Character not found.");
break;
case 14:
System.out.print("Enter the substring to search for: ");
String substring = scanner.nextLine();
position = input.indexOf(substring);
System.out.println(position != -1 ? "Found at position: " + position : "Substring not found.");
break;
case 15:
System.out.print("Enter the substring to search for: ");
substring = scanner.nextLine();
System.out.print("Enter the starting index for the search: ");
fromIndex = scanner.nextInt();
position = input.indexOf(substring, fromIndex);
System.out.println(position != -1 ? "Found at position: " + position : "Substring not found.");
break;
case 16:
System.out.println("String in lowercase: " + input.toLowerCase());
break;
case 17:
System.out.println("String in lowercase (with locale): " + input.toLowerCase(Locale.getDefault()));
break;
case 18:
System.out.println("String in uppercase: " + input.toUpperCase());
break;
case 19:
System.out.println("String in uppercase (with locale): " + input.toUpperCase(Locale.getDefault()));
break;
case 20:
System.out.println("Trimmed string: '" + input.trim() + "'");
break;
case 21:
System.out.println("Exiting the program...");
running = false;
break;
default:
System.out.println("Invalid choice. Please try again.");}}}}
🤣1
مسار oop على قناه عادل نسيم
)
1. ما هي OOP؟
تعريف البرمجة كائنية التوجه.
الفرق بينها وبين البرمجة الإجرائية.
أهمية استخدام OOP في البرمجة.
2. المفاهيم الأربعة الأساسية في OOP:
الكائنات (Objects).
الفئات (Classes).
التغليف (Encapsulation).
الوراثة (Inheritance).
التعددية (Polymorphism).
هذا شرح مقدمه عن oop
https://youtu.be/FaaM6uVbuJM?si=MR4JILOZ_499-gq-
الشرح
https://youtu.be/JIPwPCkYoLY?si=56aBhkx7vJih_z7F
وهم راح يشرح مثالين كلش مهمات
وهذا الشرح
https://youtu.be/7iMtBSktIKw?si=lJxp7gbL4UKQl7hN
الجزء الاول
https://youtu.be/mfIAAwDbdag?si=9ayVWifgglOzv7j7
الجزء الثاني
https://youtu.be/rrgQ5P1g6Ys?si=D7gym7oo_GfMRCDg
https://youtu.be/7DbGHC8rF14?si=hsJAUw4EqWo00xme
الجزء الثاني
https://youtu.be/3n47zkGMIxc?si=t809Sw3_a7ZKkZ_6
وهذا شرحه
https://youtu.be/vnzteHmCIg0?si=hjXSiONQwLVZhUip
✅لخطوة الأولى: المقدمة إلى البرمجة كائنية التوجه (OOP
)
1. ما هي OOP؟
تعريف البرمجة كائنية التوجه.
الفرق بينها وبين البرمجة الإجرائية.
أهمية استخدام OOP في البرمجة.
2. المفاهيم الأربعة الأساسية في OOP:
الكائنات (Objects).
الفئات (Classes).
التغليف (Encapsulation).
الوراثة (Inheritance).
التعددية (Polymorphism).
هذا شرح مقدمه عن oop
https://youtu.be/FaaM6uVbuJM?si=MR4JILOZ_499-gq-
✅الخطوه الثانيه:
راح نكتب اول برنامج بالoop وويشرحه بالتفصيل الممل واخر شي راح يشرح Access modifiers
وتعتبر من اهم اساسيات oop
الشرح
https://youtu.be/JIPwPCkYoLY?si=56aBhkx7vJih_z7F
وهم راح يشرح مثالين كلش مهمات
وهذا الشرح
https://youtu.be/7iMtBSktIKw?si=lJxp7gbL4UKQl7hN
لحد لهنا ضروري تفهمهن حتلو تعيد الشرح اكثر من مره وكلش عادي اذا مافهمت مره ومرتين لان ماده جديده فه اكيد ماتكون سهله الفهم
✅الخطوه الثالثه
راح يشرح .
Constructor
بالانواعه الاربعه مع امثله
و
Method Overloading
الجزء الاول
https://youtu.be/mfIAAwDbdag?si=9ayVWifgglOzv7j7
الجزء الثاني
https://youtu.be/rrgQ5P1g6Ys?si=D7gym7oo_GfMRCDg
✅ الخطوه الرابعه ونووب اخذناالجزء الاول
static keywords
هنه وانواعه مع امثله
https://youtu.be/7DbGHC8rF14?si=hsJAUw4EqWo00xme
الجزء الثاني
https://youtu.be/3n47zkGMIxc?si=t809Sw3_a7ZKkZ_6
✅الخطوه الخامسه
واخر موضوع راح ناخذه بالكورس الاول وهوه
الوراثه
inheritance
وهذا شرحه
https://youtu.be/vnzteHmCIg0?si=hjXSiONQwLVZhUip
YouTube
#030 [JAVA] - Introduction to Object-Oriented Programming
كورس البرمجة الكينونية باستخدام لغة البرمجة جافا:
ما هي البرمجة كائنية التوجه وما هو الكلاس والاوبجكت والفرق بينهما؟
Course Object-Oriented Programming Using JAVA:
What is object-oriented programming, What Is the Difference Between Classes and Objects?…
ما هي البرمجة كائنية التوجه وما هو الكلاس والاوبجكت والفرق بينهما؟
Course Object-Oriented Programming Using JAVA:
What is object-oriented programming, What Is the Difference Between Classes and Objects?…
❤4🔥1👏1🤣1
JAVA OOP
مسار oop على قناه عادل نسيم ✅لخطوة الأولى: المقدمة إلى البرمجة كائنية التوجه (OOP ) 1. ما هي OOP؟ تعريف البرمجة كائنية التوجه. الفرق بينها وبين البرمجة الإجرائية. أهمية استخدام OOP في البرمجة. 2. المفاهيم الأربعة الأساسية في OOP: الكائنات (Objects).…
هذا مسار يخص كلشي اخذنا والشرح كلش مقارب للملازم تكدرون تعتمدون عليه واكيد راح ننزل امثله بكل المواضيع بالايام الجايه وضروري ادرسون لان مابقه شي عن نهايه الكورس الاول والماده لحد الان زينه
واكيد لو لكيت شرح افضل راح انزله الكم
❤🔥3💋2🤣1
مرحبا جميعا , راح اشرح ألكم مفاهيم البرمجة الكيانية الاساسية التي بضوئها نصل الى فهم اساسيات البرمجة الكيانية التوجه فخلونه نبدي
ملخص مفاهيم :
مقدمة :
. بدايتا نفس ما نعرف كلنا ان البرمجة هي وسيلة وصفية لأعطاء أوامر الى الحاسوب وهذه الأوامر لها نسق منطقي وهدف هذا النسق المرتب بطريقة متسلسلة هو حل مشكلة برمجية او واقعية وبالتالي نكدر نكول ان البرمجة هي اداة لا غير والأعتماد الكلي هو على فهم منطقية هذه الأوامر من دون حفظ! ,
. ولازم نعرف شلون نسوي نسق منطقي متسلسل في اعطار اوامر للحاسوب فبكل بساطة نكدر نعتمد بشكل كلي على ثلاث اشياء رئيسية وهم :
عملية الأدخال ومعالجة هذه المدخلات والحصول على مخرجات معينه
هي هاي البرمجة بكل اختصار!
————————————
البرمجة الهيكلية والكيانية التوجه :
1)
وهذا الشيء ينقلنا الى نسق برمجي قد تلعمناه في المرحلة الأولى وهو البرمجة الهيكلية او بسمى اخر :
Procedural Programming or Procedural Oriented Programming ( POP )
وبكل بساطة حسنه الكود بدل ما يكون الكود البرمجي متسلسل كله في الدالة الرئيسية بطريقة المدخلات ومعالجة هذه المدخلات والحصول على المخرجات
هنا ضلينه نسوي دالة هي وضيفتها الأدخال ثم سوينه دالة وضيفتها تعالج هذه المدخلات ثم دالة تضهر هذه المدخلات على الشاشة ,
تلاحظون نفس الفكرة! بس الأسلوب تغير وتعرفنا فائدة هذا الأسلوب سابقا كمراجعة يسهل علي حياتي كمبرمج في تجزئة الكود وجعله اكثر كفائة ويقلل كتابة الكود المتكرر وهذا الشيء وهذا الشي لاحضناه في المصفوفات ,
2)
والنسق الأخر والذي نستعمله في ترتيب الكود هو البرمجية الكائنية او بمسمى اخر :
Object Oriented Programming ( OOP )
ونكدر نكول بهذا النسق الجديد كدرنا ان نوسع افاقنا كمبرمجين بجعل الكود اكثر واقعية وتقريب البرمجة من الواقع بمفاهيمها ولكن تضل الثلاث شغلات نفسها ( اداخل , معالجة , اخراج ) مع اختلاف اسلوب ترتيب وتنسيق الكود بطريقة متسلسلة ,
ويتمحور هذا الأسلوب البرمجي حول كيف ادارة البيانات وكيف انشاء نسق لسلوك معين لشيء واقعي ان كان حركة او وظيفة معينة ,
قبل ما ندخل الى الفروقات لازم نعرف شنو هو مفهوم الكيان او الكائن ؟
فنكدر نوصل فكرته هو تعميم لكل شيء في الحياة ان كان فيه روح او لم يكن فيه روح , ومن المنطقي اي كائن فيه روح له وظائف وله اشياء جمالية كالون او قد يكون ليس له روح كالسيارة ولكن لها وظائف كالفرامل والحركة واشياء جمالية كطول السيارة او شكل السيارة
فبأختصار الكيان = وظائف + بيانات
وهو يعتبر مفهوم لا غير وهو يعتبر بوابة لفهم البرمجة الكيانية واسلوب استخدام الكود لحل مشكلة معينه
————————————
اهم الفروقات بين البرمجة الهيكلية والبرمجة الكيانية :
بالمختصر بالهيكلية :
- نستخدم الدوال فقط تمرير واستقبال البيانات
- اسلوب غير امن لان لا توجد طريقة مناسبة لأخفاء البينات
- ما نكدر نسوي overloading :
التالي لازم ألتزم بنوع البياني للمرسل والمستقبل حتى ما يصير عندي خسارة بالبينات او حتى ما يصير عندي ايرور
بالمختصر بالكيانية :
- نستخدم وصف كيان عندما ننشئ حقل من البياتات ( كائن )
- نستخدم تعليمات طرق الوصول لتحديد مَن يمكن له ان يصل لبينات هذا الكائن او دوال هذا الكائن ( داخل الكلاس )
- عندما ننشئ كيان جديد ونرسل وسائط او argument من هذا الكائن يجب ان يكون هناك مكان لأستقبال هذه الوسائط كمعلمات من نفس اسم الكلاس او الفئة
بمعنى عدنا هنا دالة خاصة للكائن موجودة داخل الكلاس نسميها constructor
- نكدر نسوي overloading :
وهذا الشكل اتاحلنا مرونه بعدم الألتازم بنوع البياني للدالة المستقبلة او معالم الدالة المستقبلة وبهذا الشكل ما نخسر بينات ونسوي دالة واحدة تستقبل مختلف السيناريوهات المرسلة والمسقبِلة
————————————
❤3
نكدر نسمي object بـ instance اي حالة , ( حالة من الكلاس )
وايضا نكدر نسمي Object بـ :
Reference variables or Object references)
نكدر نسمي behaviors بـ properties اي خصائص ( دوال و متغيرات ) وايضا نكدر نسميهم بـ instance Variables متغيرات الحالة , لان الكيان هو حالة من الكلاس اي نسخة من الكلاس
وهمين نكدر نسمي class بـ characteristics
وايضا نكدر نسمي Object بـ :
Reference variables or Object references)
نكدر نسمي behaviors بـ properties اي خصائص ( دوال و متغيرات ) وايضا نكدر نسميهم بـ instance Variables متغيرات الحالة , لان الكيان هو حالة من الكلاس اي نسخة من الكلاس
وهمين نكدر نسمي class بـ characteristics
👏1