إعلان
دورة تطوير التطبيقات باستخدام لغة JavaScript في هذه الدورة ستتعلم لغة جافا سكريبت, استخدام مكتبة React.js, بناء API الموقع بواسطة Node.js, تطوير تطبيق جوال باستخدام React Native, و في نهاية الدورة ستتعلم تطوير تطبيق محادثة شبيه بتطبيق WhatsApp. تعلم الآن
دورة تطوير واجهات المستخدم في هذه الدورة ستتعلم لغة HTML و لغة CSS و لغة JavaScript. من ناحية التطبيق العملي ستتعلم طريقة بناء واجهة متجر إلكتروني مكون من ست صفحات, تحويل خمسة تصاميم PSD إلى صفحات ويب, بناء واجهة مستخدم تشبه موقع يوتيوب, بناء لوحة تحكم إحترافية. تعلم الآن
تطوير تطبيقات باستخدام لغة بايثون في هذه الدورة ستتعلم أساسيات البرمجة بلغة بايثون وصولاً إلى التعامل مع أشهر أطر العمل (Flask و Django) و ستتعلم كيف تبني متجر إلكتروني يمكن للمستخدمين البيع و الشراء من خلاله. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة PHP في هذه الدورة ستتعلم لغة PHP من الصفر, استخدام إطار العمل Laravel بشرح مفصّل و عملي, كيفية تطوير شبكة اجتماعية تشبه Instagram, بناء API لتطبيق جوال وفق أسلوب RESTful, تطوير موقع إعلانات مبوبة, تطوير نظام إدارة محتوى CMS كامل. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة Ruby في هذه الدورة ستتعلم البرمجة بلغة Ruby إنطلاقاً من أبسط المفاهيم وحتى بناء تطبيق حقيقي, إستخدام إطار العمل Ruby on Rails بشرح مفصّل و عملي, بناء تطبيق حقيقي عبارة عن شبكة اجتماعية تشبه تويتر, تطوير مجتمع الكتروني يشبه حسوب I/O. تعلم الآن
دورة علوم الحاسوب هذه الدورة معدة لتكون مدخل لعلوم الحاسوب و لغات البرمجة حيث ستتعرف فيها على أنظمة التشغيل و ستتعمق في نظام لينكس و في كيفية التعامل معه من خلال موجه الأوامر, بالإضافة إلى قواعد البيانات و أساسيات الشبكات و الخوادم و مبادئ الحماية والأمان في الويب. تعلم الآن

    Java مثال مهم يعلمك متى تحتاج إلى إنشاء كلاس مجرد

    في المثال التالي قمنا ببناء كلاس إسمه Person نوعه abstract, يملك أربعة خصائص نوعهم private إسمهم name, gender, brithday و isMarried, و يملك دوال Setter and Getter لهذه الخصائص, و يملك أيضاً دالة إسمها displayInfo() نوعها abstract.

    بعدها قمنا بتعريف كلاس إسمه Student يرث من الكلاس Person و يملك متغير إضافي إسمه specialization.
    بعدها قمنا بتعريف كلاس إسمه Employee يرث من الكلاس Person و يملك متغير إضافي إسمه workPlace.
    الفكرة هنا أن أي كلاس سيتم إنشاءه لتمثيل إنسان يجب أن يرث من الكلاس Person الذي يملك الخصائص المشتركة لكل البشر.

    في الأخير سنقوم ببناء الكلاس Main لتجربة الكود.


    Person.java
    public abstract class Person {
     
        // هنا قمنا بتعريف الخصائص المشتركة لدى جميع البشر
        private String name;
        private String gender;
        private String birthday;
        private boolean isMarried;
     
        // هنا قمنا بتعريف الكونستركتور
        public Person(String n, String g, String b, boolean i) {
            name = n;
            gender = g;
            birthday = b;
            isMarried = i;
        }
     
        // Getter هنا قمنا بتعريف دوال الـ
     
        public String getName() {
            return name;
        }
     
        public String getGender() {
            return gender;
        }
     
        public String getBirthday() {
            return birthday;
        }
     
        public boolean getIsMarried() {
            return isMarried;
        }
     
        // Setter هنا قمنا بتعريف دوال الـ
        public void setName(String n) {
          name = n;
        }
     
        public void setGender(String g) {
            gender = g;
        }
     
        public void setBirthday(String b) {
            birthday = b;
        }
     
        public void setIsMarried(boolean i) {
            isMarried = i;
        }
     
        // abstract و التي نوعها displayInfo() هنا قمنا بتعريف الدالة
        public abstract void displayInfo();
     
    }
    		

    Student.java
    public class Student extends Person {
     
        String specialization;     // هنا قمنا بتعريف خاصية التخصص و التي يملكها فقط التلاميذ
     
        // هنا قمنا بتعريف الكونستركتور
        public Student(String n, String g, String b, boolean i, String s) {
            super(n, g, b, i);       // Person هنا سيتم إرسال أول أربع قيم إلى كونستركتور الكلاس
            specialization = s;
        }
     
        // بشكل ملائم للتلامذة displayInfo() للدالة Override هنا فعلنا
        @Override
        public void displayInfo() {
            System.out.println("Name: " + getName());
            System.out.println("Gender: " + getGender());
            System.out.println("Birthday: " + getBirthday());
            System.out.println("Specialization: " + specialization);
            System.out.println("---------------------------------");
        }
     
    }
    		

    Employee.java
    public class Employee extends Person {
     
        String workPlace;     // هنا قمنا بتعريف خاصية مكان العمل و التي يملكها فقط الموظفون و العمال
     
        // هنا قمنا بتعريف الكونستركتور
        public Employee(String n, String g, String b, boolean i, String w) {
            super(n, g, b, i);       // Person هنا سيتم إرسال أول أربع قيم إلى كونستركتور الكلاس
            workPlace = w;
        }
     
        // بشكل ملائم للموظفين أو العمال displayInfo() للدالة Override هنا فعلنا
        @Override
        public void displayInfo() {
            System.out.println("Name: " + getName());
            System.out.println("Gender: " + getGender());
            System.out.println("Birthday: " + getBirthday());
    		
            if(getIsMarried() == true) {
                System.out.println("is Married: yes");
    		}
            else {
                System.out.println("is Married: no");
    		}
    		
            System.out.println("Work place: " + workPlace);
            System.out.println("---------------------------------");
        }
     
    }
    		

    Main.java
    public class Main {
     
        public static void main(String[] args) {
     
            // و هو عبارة عن إنسان له خصائص طالب Student هنا قمنا بإنشاء كائن من الكلاس
            Student s = new Student("Mhamad", "Male", "1994", false, "Computer Science");
            s.displayInfo();
     
            // و هو عبارة عن إنسان له خصائص موظف أو عامل Employee هنا قمنا بإنشاء كائن من الكلاس
            Employee e = new Employee("Rana", "Female", "1986", true, "Al-Iman school");
            e.displayInfo();
     
        }
     
    }
    		

    سنحصل على النتيجة التالية عند التشغيل.

    Name: Mhamad
    Gender: Male
    Birthday: 1994
    Specialization: Computer Science
    ---------------------------------
    Name: Rana
    Gender: Female
    Birthday: 1986
    is Married: yes
    Work place: Al-Iman school
    --------------------------------- 
    		
    إعلان

    Eqla3Tech.com

    شروحات مكتوبة حول لغات البرمجة و تقنية المعلومات باللغة العربية مقدمة من إقلاع تك.

    لغة جافا لغة ++C قواعد البيانات نظام ويندوز نظام لينكس الشبكات تقنية المعلومات الأمن السيبراني

    الدورات

    أدوات مساعدة

    الأقسام

    دورات
    مقالات أسئلة مشاريع كتب