التصنيفات المتداخلة Nasted classes

أولاً: مفهوم التصنيفات المتداخلة :

لغة Kotlin تدعم طريقة التصنيفات المتداخلة هي عبارة عن تصنيف كبير وبداخله مجموعة من التصنيفات ، يعني تعريف class بداخل class  .


ثانياً: طريقة تعريف التصنيفات المتداخلة :

class school{

    class employee{

    }

    class student{

    }
   
}


ثالثاً: أهمية التصنيفات المتداخلة :

  • تفيد في عملية التغليف Encapsulation
  • تعتبر طريقة عملية لو لدينا عدد من التصنيفات المرتبطة ببعض .

رابعاً: مصطلحات مهمة في التصنيفات المتداخلة :

التصنيف الخارجي الكبير يسمى -> OUTER CLASS .

التصنيفات الداخلية التي بداخل outer class تسمى -> INNER CLASS .


خامساً:انشاء كائن من inner class :

في الدالة الرئيسية :- var obj= outerClass.innerClass()


سادساً: مثال :

class school{

    class employee{
        val id:Int = 0
        var name :String =" "
        fun getInfo(){
            println("The Id of Employee is :$id \n Name :$name")
        }
    }

    class student{
        var grade:Char = ' '
        var level:Int =0
        var name :String =" "
        fun getInfo(){
            println("The student name is :$name \n Level : $level \n Grade:$grade")
        }
    }

}

fun main (args:Array<String>){
    var stu = school.student()
    stu.name="Khalid Ali"
    stu.level=5
    stu.grade='A'
    stu.getInfo()

}