{
  "assessmentTests": {
    "java_test": {
      "name": "Ìdánwò Java",
      "desc": "Ìbéèrè onípò-àpẹẹrẹ 30 lórí síńtáàsì ìpìlẹ̀, bí OOP ṣe ń ṣiṣẹ́, collections, generics, exceptions àti concurrency — ṣàwárí bóyá Java rẹ bá ohun tí ìpolówó iṣẹ́ túmọ̀ sí nípa ìjáfáfá nínú Java mu.",
      "recommendation": "Àwòrán ọgbọ́n Java rẹ",
      "results": {
        "beginner": {
          "name": "Olùbẹ̀rẹ̀",
          "desc": "O lè kọ àwọn class àti method tí ó ń ṣiṣẹ́, ṣùgbọ́n àwọn ìbéèrè tí o kò gbà pọ̀ jùlọ sí àyíká ìdánimọ̀ (identity) àti àwọn iye àtilẹ̀wá (defaults) dípò síńtáàsì — String == ní ìfiwéra pẹ̀lú .equals, ìdí tí new String(\"x\") kì í fi í tún string pool lò, àti iye àtilẹ̀wá numeric field ní ìfiwéra pẹ̀lú wrapper field. Kò sí èyí tí ó jẹ́ nípa pé o kò mọ Java dáadáa; ìwọ̀nyí ni àwọn òfin pàtó tí ó máa ń ṣi àwọn tí ó kọ́ èdè náà nípa ìdánwò-àti-àṣìṣe lọ́nà, dípò kí wọ́n kọ́ bí reference àti primitive ṣe ń ṣiṣẹ́ ní abẹ́lẹ̀. Wọ́n ṣe pàtàkì níbi iṣẹ́ nítorí pé ọ̀kọ̀ọ̀kan wọn ni ibi tí kóòdù ti ń compile, tí ó ń ṣiṣẹ́, tí ó sì ń ṣe ohun tí kò tọ́ ní ìdákẹ́jẹ́ẹ́.",
          "recommendation": "Bẹ̀rẹ̀ pẹ̀lú nǹkan mẹ́ta, ní ètò yìí: ìdí tí == lórí ohun String méjì fi ń fi reference wé ara wọn, kì í ṣe àwọn lẹ́tà (.equals sì ni ohun tí o fẹ́ fẹ́rẹ̀ẹ́ nígbà gbogbo); bí int overflow ṣe ń yípo padà ní ìdákẹ́jẹ́ẹ́ dípò kí ó ju exception; àti ìdí tí Integer field tí a kò fún ní iye fi ń jẹ́ null ní àtilẹ̀wá nígbà tí int field ń jẹ́ 0. Àwọn ìkẹ́kọ̀ọ́ Java ti Oracle fúnra rẹ̀ àti Baeldung méjèèjì ṣàlàyé gbogbo mẹ́tẹ̀ẹ̀ta pẹ̀lú àwọn àpẹẹrẹ tí o lè ṣiṣẹ́."
        },
        "intermediate": {
          "name": "Agbedeméjì",
          "desc": "O ń bójútó kóòdù ohun-èlò ojoojúmọ́ láìní ìṣòro — àwọn class, collections, ìṣàn ìdarí (control flow) tí ó tààrà — iṣẹ́ àfikún àbùdá déédéé kò sì ní dá ọ dúró. Àlàfo tí ó wà láàárín ibí yìí àti Ìpele Gíga jẹ́ pàápàá nípa ohun tí ó ń ṣẹlẹ̀ nígbà tí òfin Java bá pàdé concurrency àti generics: static method tí a yanjú nípa type tí a kéde (declared type) dípò ohun tí o rò, ètò ìtòlẹ́sẹẹsẹ HashMap tí o gbára lé láìmọ̀, ConcurrentModificationException láti yíyọ ohun kan kúrò láàárín loop. Irú àwọn bug wọ̀nyí ni ó máa ń kọjá nígbà kíkà kíákíá, tí wọ́n sì ń fara hàn nìkan lábẹ́ ipò runtime pàtó kan.",
          "recommendation": "Pọkàn pọ̀ sórí bí ìwò static ti compiler sí kóòdù rẹ ṣe yàtọ̀ sí ohun tí ó ń ṣiṣẹ́: overload resolution àti static-method hiding nípa type tí a kéde dípò type runtime, ìdí tí HashMap kò fi fúnni ní ìdánilójú ètò ìtòlẹ́sẹẹsẹ iteration, àti ìdí tí yíyí list padà tààrà nígbà tí o ń ṣe iteration lórí rẹ̀ fi ń ju ConcurrentModificationException. Lẹ́yìn náà generics erasure, nítorí pé ó máa ń ṣi àwọn tí ó ti mọ collections ní ẹyọ-ẹyọ lọ́nà."
        },
        "advanced": {
          "name": "Ìpele Gíga",
          "desc": "Èyí ni ìpele tí ọ̀pọ̀ ìpolówó iṣẹ́ ń tọ́ka sí nígbà tí wọ́n bá sọ pé \"Java tó lágbára.\" O lè ka class kan tí ó ní static block, instance block àti ọ̀pọ̀ constructor, kí o sì sọ tẹ́lẹ̀ ètò gangan tí wọ́n yóò gbà ṣiṣẹ́; o mọ ìdí tí finally block fi lè pa iye return ti try block rẹ́ ní ìdákẹ́jẹ́ẹ́; o sì máa ń lo try-with-resources dípò títi nǹkan pa fúnra rẹ nínú finally, nítorí pé o mọ ìdánilójú ètò-ìtẹ̀léra tí ó ń fún ọ. Ohun tí ó ya ìpele yìí sọ́tọ̀ sí ti òkè jùlọ ni apá concurrency àti apá interface nínú iṣẹ́ náà: ohun tí synchronized ń tì pa ní ti gidi, ohun tí volatile ń ṣe ìdánilójú rẹ̀ àti ohun tí kò ṣe ìdánilójú rẹ̀, àti bí a ṣe ń yanjú ìforígbárí default-method.",
          "recommendation": "Tẹ̀síwájú sí àwọn apá tí ó ń dáàbò bo kóòdù tí àwọn thread mìíràn àti interface mìíràn náà ń fọwọ́ kàn: ìyàtọ̀ láàárín ohun tí synchronized instance method ń tì pa àti ohun tí synchronized static method ń tì pa, ìdí tí volatile fi ń fúnni ní visibility ṣùgbọ́n kì í ṣe atomicity fún counter++, àti bí Java ṣe ń fipá mú ọ láti yanjú default-method diamond fúnra rẹ. Àwọn ohun èlò ẹ̀kọ́ Baeldung àti Java Concurrency in Practice lórí Java Memory Model ni ibi tí ó yẹ kí o lọ tẹ̀lé fún méjèèjì."
        },
        "expert": {
          "name": "Ògbóǹtarìgì",
          "desc": "O gba máàkì tí ó ga jùlọ ní gbogbo apá — síńtáàsì ìpìlẹ̀ àti types, bí OOP ṣe ń ṣiṣẹ́ àti scope, collections àti generics, àti exceptions, concurrency àti idioms. Ní ìṣe, èyí túmọ̀ sí pé wọ́n lè fún ọ ní class ẹni tí o kò mọ̀, kí o sì ṣàlàyé ìdí tí compile error, runtime exception, tàbí iye tí kò tọ́ ní ìdákẹ́jẹ́ẹ́ fi ń ṣẹlẹ̀ — kì í ṣe ohun tí síńtáàsì sọ pé ó yẹ kí ó ṣe nìkan — èyí tí ó jẹ́ ọgbọ́n tí ó le jù, tí ó sì níye lórí jù. Ní ìpele yìí, èdè náà fúnra rẹ̀ kì í sábà jẹ́ ohun tí ó ń dí ọ lọ́wọ́; ààlà náà sábà máa ń jẹ́ ètò concurrency tàbí ìrísí dátà tí ó wà nísàlẹ̀ rẹ̀.",
          "recommendation": "Èrè rẹ báyìí wà nínú design àti ìṣàwárí ohun tí ó fa ìṣòro: kíka thread dump kí o tó rò pé hang jẹ́ deadlock; yíyan láàárín synchronized, àwọn lock java.util.concurrent àti atomics gẹ́gẹ́ bí ìwọ̀n-àǹfààní-àti-àdánù dípò àṣà àtilẹ̀wá; àti ètò stream-pipeline tí ó ń jẹ́ lazy mọ̀ọ́mọ̀ dípò lásán. Bí wọ́n bá ń ṣàyẹ̀wò rẹ fún ipò iṣẹ́ kan, ṣàpèjúwe bug concurrency kan — bíi happens-before edge tí a pàdánù tàbí ConcurrentModificationException tí o rí nínú production — dípò kíka orúkọ àwọn àbùdá Java; ó ń fi èrò-ìrònú rẹ hàn, kì í ṣe ọ̀rọ̀ nìkan."
        }
      },
      "questions": [
        {
          "question": "O ṣẹ̀dá ohun String méjì: String a = new String(\"cat\"); String b = new String(\"cat\"); Kí ni a == b yóò jẹ́?",
          "options": [
            {
              "icon": "",
              "label": "true"
            },
            {
              "icon": "",
              "label": "Ó gbára lé ètò string pool tí JVM ń lò"
            },
            {
              "icon": "",
              "label": "Àṣìṣe compile"
            },
            {
              "icon": "",
              "label": "false"
            }
          ]
        },
        {
          "question": "Integer x = 100; Integer y = 100; System.out.println(x == y); lẹ́yìn náà Integer x2 = 200; Integer y2 = 200; System.out.println(x2 == y2); Kí ni ìlà méjèèjì yóò tẹ̀ jáde?",
          "options": [
            {
              "icon": "",
              "label": "true lẹ́yìn náà true"
            },
            {
              "icon": "",
              "label": "false lẹ́yìn náà false"
            },
            {
              "icon": "",
              "label": "Kóòdù náà kò ní compile"
            },
            {
              "icon": "",
              "label": "true lẹ́yìn náà false"
            }
          ]
        },
        {
          "question": "int max = Integer.MAX_VALUE; System.out.println(max + 1); Kí ni yóò ṣẹlẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "Ó máa ju ArithmeticException kan"
            },
            {
              "icon": "",
              "label": "Ó máa tún tẹ Integer.MAX_VALUE jáde"
            },
            {
              "icon": "",
              "label": "Ó máa tẹ Integer.MIN_VALUE jáde"
            },
            {
              "icon": "",
              "label": "Àṣìṣe compile"
            }
          ]
        },
        {
          "question": "System.out.println(0.1 + 0.2 == 0.3); Kí ni èyí yóò tẹ̀ jáde, kí sì ni ìdí rẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "false, nítorí pé a kò lè ṣojú 0.1 àti 0.2 ní pàtó nínú binary floating point"
            },
            {
              "icon": "",
              "label": "true, nítorí pé Java máa ń yí àpapọ̀ double sí decimal tí ó sún mọ́ jùlọ"
            },
            {
              "icon": "",
              "label": "true, nítorí pé àwọn iye tí ó ní díjíìtì decimal méjì máa ń pàpọ̀ ní pàtó nínú double"
            },
            {
              "icon": "",
              "label": "Ó máa ju ArithmeticException fún ìfiwéra tí kò péye"
            }
          ]
        },
        {
          "question": "Class kan kéde instance field méjì láìsí initializer: int count; àti Integer total; Kí constructor tó ṣiṣẹ́, kí ni iye àtilẹ̀wá wọn?",
          "options": [
            {
              "icon": "",
              "label": "Méjèèjì jẹ́ 0"
            },
            {
              "icon": "",
              "label": "Méjèèjì kò ní iye kankan títí a bá fi iye fún wọn"
            },
            {
              "icon": "",
              "label": "count jẹ́ 0, total sì jẹ́ null"
            },
            {
              "icon": "",
              "label": "Méjèèjì jẹ́ null"
            }
          ]
        },
        {
          "question": "Loop kan ṣiṣẹ́ ní ìgbà 1000, ní ìgbà kọ̀ọ̀kan ó ń ṣe result += \"x\"; lórí String result. Kí ni ó ń ṣẹlẹ̀ ní ti gidi ní abẹ́lẹ̀ ní ìyípo kọ̀ọ̀kan?",
          "options": [
            {
              "icon": "",
              "label": "A máa ń fa character array ti String tí ó wà tẹ́lẹ̀ gùn sí i níbi tí ó wà"
            },
            {
              "icon": "",
              "label": "Java máa ń kó àwọn concatenation náà jọ, ó sì máa ń ṣẹ̀dá ohun String ìkẹyìn kan ṣoṣo"
            },
            {
              "icon": "",
              "label": "StringBuilder kan ṣoṣo ni a pín láàárín gbogbo ìyípo 1000 náà"
            },
            {
              "icon": "",
              "label": "A máa ń ṣẹ̀dá String tuntun, a sì máa ń yí result padà láti tọ́ka sí i"
            }
          ]
        },
        {
          "question": "final List<String> names = new ArrayList<>(); Èwo nínú ìwọ̀nyí ni òótọ́?",
          "options": [
            {
              "icon": "",
              "label": "names.add(\"Ana\") máa compile, ó sì máa ṣiṣẹ́ dáadáa"
            },
            {
              "icon": "",
              "label": "names.add(\"Ana\") jẹ́ àṣìṣe compile"
            },
            {
              "icon": "",
              "label": "List náà wà ní ààbò fún kíkọ láti ọ̀pọ̀ thread lẹ́ẹ̀kan náà"
            },
            {
              "icon": "",
              "label": "final lórí local variable kò ní ipa kankan"
            }
          ]
        },
        {
          "question": "int[] a = {1, 2, 3}; int[] b = {1, 2, 3}; System.out.println(a == b); System.out.println(Arrays.equals(a, b)); Kí ni ìlà méjèèjì yóò tẹ̀ jáde?",
          "options": [
            {
              "icon": "",
              "label": "false lẹ́yìn náà true"
            },
            {
              "icon": "",
              "label": "true lẹ́yìn náà true"
            },
            {
              "icon": "",
              "label": "false lẹ́yìn náà false"
            },
            {
              "icon": "",
              "label": "Kò ní compile"
            }
          ]
        },
        {
          "question": "void show(Object o) { print(\"Object\"); } void show(String s) { print(\"String\"); } Object ref = \"hello\"; show(ref); Overload wo ni ó máa ṣiṣẹ́, kí sì ni ìdí rẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "show(String) ni ó máa ṣiṣẹ́, nítorí pé class gidi ti ohun náà ní runtime jẹ́ String"
            },
            {
              "icon": "",
              "label": "show(Object) ni ó máa ṣiṣẹ́, nítorí pé a máa ń yan overload láti inú type tí a kéde"
            },
            {
              "icon": "",
              "label": "Kò sí èyíkéyìí nínú wọn; ìpè náà kò ṣe kedere, kò sì ní compile"
            },
            {
              "icon": "",
              "label": "Méjèèjì ṣiṣẹ́, ẹ̀ẹ̀kan ọ̀kọ̀ọ̀kan, nítorí pé overload kọ̀ọ̀kan bá a mu"
            }
          ]
        },
        {
          "question": "Àpò Base ní static void greet() { print(\"Base\"); }. Àpò Derived pín Base, kí o sì sàfihàn static void greet() { print(\"Derived\"); }. Ìwọ́ kọ̀ báyìí: Base ref = new Derived(); ref.greet(); Kín ni yóò tẹ̀jáde?",
          "options": [
            {
              "icon": "",
              "label": "Derived"
            },
            {
              "icon": "",
              "label": "Kò ní compile"
            },
            {
              "icon": "",
              "label": "Base"
            },
            {
              "icon": "",
              "label": "Base, lẹ́yìn náà Derived"
            }
          ]
        },
        {
          "question": "Nínú ìṣẹ̀lẹ̀ kan, ìwọ́ kọ̀ int count = 0; lẹ́yìnpẹ̀ gbìyànjú láti tọ̀kà count láti ínú lambda tó wà fúnni ìṣẹ̀lẹ̀ mìíràn. Kín ni ó yẹ kí ṣ àbọ̀ count nígbati èyí yóò ṣe àgbájáde?",
          "options": [
            {
              "icon": "",
              "label": "Ó gbọ́dọ̀ jẹ́ final tàbí effectively final"
            },
            {
              "icon": "",
              "label": "Kò sí nǹkankan; local èyíkéyìí yóò ṣiṣẹ́"
            },
            {
              "icon": "",
              "label": "A gbọ́dọ̀ kéde rẹ̀ gẹ́gẹ́ bí volatile"
            },
            {
              "icon": "",
              "label": "Ó gbọ́dọ̀ jẹ́ field, kì í ṣe local"
            }
          ]
        },
        {
          "question": "void rename(StringBuilder sb) { sb = new StringBuilder(\"new\"); } nìgbàwo àní ránṣẹ́ bí StringBuilder original = new StringBuilder(\"old\"); rename(original); Kín ni original tíí ṣe lẹ́yìnpẹ̀ pẹ́?",
          "options": [
            {
              "icon": "",
              "label": "Ó jẹ́ \"new\""
            },
            {
              "icon": "",
              "label": "Ó jẹ́ null"
            },
            {
              "icon": "",
              "label": "Ó ṣì jẹ́ \"old\""
            },
            {
              "icon": "",
              "label": "Ó ju runtime exception kan"
            }
          ]
        },
        {
          "question": "Àpò kan ní sakèkèó tí àìchábá ṣìlẹ̀, akeyamù tí àìchábá ṣìlẹ̀, àti akọ̀wé, nínú irú èyí àkójú. Ìwọ́ ṣe àwọn òhun méjì tí àpò yìí lẹ́yìnpẹ̀ ọ̀ọ̀kan. Nínú irú irú ni àwọn eyi ń ṣiṣẹ́?",
          "options": [
            {
              "icon": "",
              "label": "Static block ẹ̀ẹ̀kan; fún object kọ̀ọ̀kan, instance block, lẹ́yìn náà constructor"
            },
            {
              "icon": "",
              "label": "Gbogbo mẹ́tẹ̀ẹ̀ta ń ṣiṣẹ́, ní ìtẹ̀léra inú kóòdù, fún object kọ̀ọ̀kan"
            },
            {
              "icon": "",
              "label": "Fún object kọ̀ọ̀kan, constructor, lẹ́yìn náà instance block; static block ẹ̀ẹ̀kan níparí"
            },
            {
              "icon": "",
              "label": "Static block ẹ̀ẹ̀kan fún object kọ̀ọ̀kan, lẹ́yìn náà instance block, lẹ́yìn náà constructor"
            }
          ]
        },
        {
          "question": "Àpò kan ní void log(String s) àti void log(String... args). Ìwọ́ pe log(\"hi\"). Èwo ni ó ṣiṣẹ́?",
          "options": [
            {
              "icon": "",
              "label": "log(String... args)"
            },
            {
              "icon": "",
              "label": "Àṣìṣe compile: ìpè náà kò ṣe kedere"
            },
            {
              "icon": "",
              "label": "log(String s)"
            },
            {
              "icon": "",
              "label": "Overload èyíkéyìí tí a kọ́kọ́ kéde"
            }
          ]
        },
        {
          "question": "Ẹkáolè akọ̀wé ìṣáájú tí rán àsèkù ṣí akọ̀wé mìíràn nínú àpò ọ̀ọ̀kan nípa this(0); nibo ni èyí ó ní oye láti hánnù?",
          "options": [
            {
              "icon": "",
              "label": "Ibikíbi nínú ara rẹ̀, kí constructor tó padà"
            },
            {
              "icon": "",
              "label": "Gẹ́gẹ́ bí gbólóhùn àkọ́kọ́ nínú constructor nìkan"
            },
            {
              "icon": "",
              "label": "Gẹ́gẹ́ bí gbólóhùn ìkẹyìn nínú constructor nìkan"
            },
            {
              "icon": "",
              "label": "Nínú constructor tí a fi keyword delegate sàmì sí nìkan"
            }
          ]
        },
        {
          "question": "Ìwọ̀ nílò àkójú tí yóò ní àwọn nkan nípìn níbi ìṣáájú jù, àti kíkà àkájú-ọ̀rọ̀ jẹ́ ìdáwọ́. Èwo ni ọ̀nà ílò-ẹsẹ̀ tó dárá jùlọ, àti kíni idi rẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "ArrayList, nítorí pé array abẹ́lẹ̀ rẹ̀ mú kí ìfisí iwájú yára jùlọ"
            },
            {
              "icon": "",
              "label": "Èyíkéyìí, nítorí pé méjèèjì ṣe ìmúṣẹ List pẹ̀lú ìdánilójú kan náà"
            },
            {
              "icon": "",
              "label": "LinkedList, nítorí pé ìfisí iwájú jẹ́ O(1) dípò O(n)"
            },
            {
              "icon": "",
              "label": "LinkedList, nítorí pé ó ní random access O(1)"
            }
          ]
        },
        {
          "question": "Ìwọ̀ fi àwọn àkójú márùn rù ọ̀pọ̀ HashMap nínú irú àkójú kan, lẹ́yìnpẹ̀ ṭun àkójú ní lílo ẹkáolè fún-gbogbo. Kín ni ìṣáájú tí àwọn àkójú yóò jáde nínú?",
          "options": [
            {
              "icon": "",
              "label": "Ìtẹ̀léra ìfisí wọn"
            },
            {
              "icon": "",
              "label": "Kò sí ìtẹ̀léra tó dájú"
            },
            {
              "icon": "",
              "label": "Ní ìtẹ̀léra key"
            },
            {
              "icon": "",
              "label": "Ìdàkejì ìtẹ̀léra ìfisí wọn"
            }
          ]
        },
        {
          "question": "Ọ̀pọ̀ kèkèó ní kí àbúrí-ọ̀rọ̀ nì HashMap wọ̀n-ọ̀-ọ̀-kan lè dípa, àti ọ̀pọ̀ kèkèó ní kí àbúrí ìbòòmi?",
          "options": [
            {
              "icon": "",
              "label": "Kò sí key null, kò sì sí value null kankan"
            },
            {
              "icon": "",
              "label": "Key null kan, value null iye èyíkéyìí"
            },
            {
              "icon": "",
              "label": "Key null tàbí value null iye èyíkéyìí"
            },
            {
              "icon": "",
              "label": "Key null kan àti value null kan"
            }
          ]
        },
        {
          "question": "Ìwọ̀ ṭun Àkójú nipa ẹkáolè fún-gbogbo àti ọ̀rọ̀ list.remove(item) sísilẹ̀ nínú ara Àkójú naa nínú ara ẹkáolè, nínú àwọn àkójú díẹ̀ àìgbogbo. Kín ni yóò ṣẹlẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "Ó yọ gẹ́lẹ́ àwọn element tí a fẹ́ kúrò"
            },
            {
              "icon": "",
              "label": "Ó yọ wọ́n, ṣùgbọ́n lẹ́yìn tí loop bá parí nìkan"
            },
            {
              "icon": "",
              "label": "Ó ju IndexOutOfBoundsException"
            },
            {
              "icon": "",
              "label": "Ó ju ConcurrentModificationException"
            }
          ]
        },
        {
          "question": "Ní runtime, tí a bá ní List<String> list, kí ni o lè mọ̀ ní tòótọ́ nípa generic type parameter rẹ̀ nípasẹ̀ reflection tàbí instanceof?",
          "options": [
            {
              "icon": "",
              "label": "list.getElementType() dá String.class padà"
            },
            {
              "icon": "",
              "label": "instanceof List<String> ń ṣàyẹ̀wò irú element"
            },
            {
              "icon": "",
              "label": "JVM ń tọ́jú rẹ̀ bí metadata tí getGenericType() lè kà"
            },
            {
              "icon": "",
              "label": "Kò sí ohun tí a lè mọ̀ nípa irú element"
            }
          ]
        },
        {
          "question": "switch (day) { case 1: case 2: print(\"Weekday\"); break; case 6: print(\"Saturday\"); case 7: print(\"Sunday\"); break; default: print(\"?\"); } Tí day jẹ́ 6, kín ni yóò tẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "Saturday nìkan"
            },
            {
              "icon": "",
              "label": "Sunday nìkan"
            },
            {
              "icon": "",
              "label": "Saturday, Sunday, lẹ́yìn náà ?"
            },
            {
              "icon": "",
              "label": "Saturday, lẹ́yìn náà Sunday"
            }
          ]
        },
        {
          "question": "Class Product kan nílò ètò ìtòlẹ́sẹẹsẹ \"àdánidá\" kan ṣoṣo tí ó hàn gbangba nípa iye owó, pẹ̀lú agbára láti tún tò wọ́n nípa orúkọ tàbí nípa iye ọjà tó wà ní àwọn ibi ọ̀tọ̀ọ̀tọ̀ nínú codebase. Àkópọ̀ wo ni ìṣètò tó tọ́?",
          "options": [
            {
              "icon": "",
              "label": "Ṣe ìmúṣẹ Comparable<Product> ní ìgbà mẹ́ta ọ̀tọ̀ọ̀tọ̀"
            },
            {
              "icon": "",
              "label": "Comparable fún iye owó, àti Comparator ọ̀tọ̀ fún orúkọ àti iye ọjà"
            },
            {
              "icon": "",
              "label": "Comparable fún orúkọ, àti àwọn Comparator fún iye owó àti iye ọjà"
            },
            {
              "icon": "",
              "label": "Comparable kan ṣoṣo tó ní method compareTo mẹ́ta tí a ṣe overload"
            }
          ]
        },
        {
          "question": "Ìṣẹ̀lẹ̀ kan ní pẹ́ new FileReader(path), eyiti ó sàfihàn throws IOException. IOException pín Exception, kìí ṣe RuntimeException. Kín ni rẹ̀ ó yẹ nígbati èyí yóò àgbájáde?",
          "options": [
            {
              "icon": "",
              "label": "Kò sí nǹkankan; ó máa compile bí a ṣe kọ ọ́"
            },
            {
              "icon": "",
              "label": "Ṣe catch IOException tàbí kéde throws IOException"
            },
            {
              "icon": "",
              "label": "Ṣe catch RuntimeException yí ìpè náà ká"
            },
            {
              "icon": "",
              "label": "Kéde method náà gẹ́gẹ́ bí static"
            }
          ]
        },
        {
          "question": "try (Resource a = new Resource(\"A\"); Resource b = new Resource(\"B\")) { ... } lo méjì ẹ̀rú tó fihàn AutoCloseable. Tí ara try jẹ́ ìpánu ní ìdádúró, nínú irú irú ni àwọn wa tíì pa?",
          "options": [
            {
              "icon": "",
              "label": "Ní ìtẹ̀léra ìkéde, A lẹ́yìn náà B"
            },
            {
              "icon": "",
              "label": "B lákọ̀ọ́kọ́, lẹ́yìn náà A"
            },
            {
              "icon": "",
              "label": "Méjèèjì ní àkókò kan náà"
            },
            {
              "icon": "",
              "label": "B nìkan ló ń tì fúnra rẹ̀"
            }
          ]
        },
        {
          "question": "int getValue() { try { return 1; } finally { return 2; } } Kini getValue() yóò padà?",
          "options": [
            {
              "icon": "",
              "label": "1"
            },
            {
              "icon": "",
              "label": "Ó ju exception kan"
            },
            {
              "icon": "",
              "label": "2"
            },
            {
              "icon": "",
              "label": "Kò ní compile"
            }
          ]
        },
        {
          "question": "try { ... } catch (IOException e) { ... } catch (FileNotFoundException e) { ... }, àti FileNotFoundException dìde lati IOException. Kini yóò ṣẹ̀lẹ̀ nígbà tí o bá yọ́ ò ṣàpèjáde?",
          "options": [
            {
              "icon": "",
              "label": "Àṣìṣe compile fún block catch kejì tí kò ṣeé dé"
            },
            {
              "icon": "",
              "label": "Ó máa compile; block FileNotFoundException ló ń bójú tó irú yẹn"
            },
            {
              "icon": "",
              "label": "Ó máa compile, catch méjèèjì sì ṣiṣẹ́ lẹ́sẹẹsẹ"
            },
            {
              "icon": "",
              "label": "Ó máa compile ṣùgbọ́n ó kùnà ní runtime lórí FileNotFoundException"
            }
          ]
        },
        {
          "question": "Klásì kan ní synchronized ọ̀fáà àbajọ̀ process() àti synchronized ọ̀fáà àgbàtérò configure(). Kini, tí a rí i dáradára, olúkọ̀ kọ̀ọ̀kan ń kọ ún?",
          "options": [
            {
              "icon": "",
              "label": "process() ń lock instance; configure() ń lock object Class"
            },
            {
              "icon": "",
              "label": "Méjèèjì ń lo lock kan ṣoṣo fún gbogbo JVM"
            },
            {
              "icon": "",
              "label": "process() ń lock object Class; configure() ń lock instance olùpè"
            },
            {
              "icon": "",
              "label": "Kò sí èyí tó ń lock nǹkankan láìsí synchronized block nínú rẹ̀"
            }
          ]
        },
        {
          "question": "Ibadandun kan jẹ́ kọ́ volatile int counter = 0;, àti ìṣẹ ẹgbẹ́run ná ń ṣẹ counter++ lórí rẹ̀ ní iye. Ṣe volatile ní yiyọ̀ ìkẹ̀wù àìtéwogba níhìn?",
          "options": [
            {
              "icon": "",
              "label": "Bẹ́ẹ̀ ni"
            },
            {
              "icon": "",
              "label": "Rárá"
            },
            {
              "icon": "",
              "label": "Fún field int àti long nìkan"
            },
            {
              "icon": "",
              "label": "Tí field náà bá tún jẹ́ static nìkan"
            }
          ]
        },
        {
          "question": "Interface A àti interface B kọ̀ọ̀kan ní default ọ̀fáà describe(). Klásì kan ní ara A àti B ṣugbọ́n ó kò àtúnkọ describe() níìwọ̀ tẹ́rẹ́. Kini yóò ṣẹ̀lẹ̀?",
          "options": [
            {
              "icon": "",
              "label": "Ẹ̀yà ti A ló ṣiṣẹ́, nítorí pé A ni a kọ́kọ́ kọ"
            },
            {
              "icon": "",
              "label": "Ẹ̀yà méjèèjì ṣiṣẹ́, ọ̀kan lẹ́yìn èkejì"
            },
            {
              "icon": "",
              "label": "Ó máa compile ṣùgbọ́n ó ju exception nígbà tí a bá pè é"
            },
            {
              "icon": "",
              "label": "Àṣìṣe compile àfi tí class náà bá override describe()"
            }
          ]
        },
        {
          "question": "list.stream().filter(x -> x > 0).map(x -> x * 2); ni a sọ ṣugbọ́n àbùkù ò ní àbájọ̀ fún terminal ìṣẹ bíi .collect() tàbí .forEach(). Kini yóò ṣẹ̀lẹ̀ nígbà tó bá sáre àbùkù yẹn?",
          "options": [
            {
              "icon": "",
              "label": "Kò sí nǹkankan, pipeline náà kò ṣiṣẹ́ rárá"
            },
            {
              "icon": "",
              "label": "Gbogbo element ni a filter tí a sì map lẹ́sẹ̀kẹsẹ̀"
            },
            {
              "icon": "",
              "label": "filter nìkan ló ṣiṣẹ́; map ń dúró de terminal operation"
            },
            {
              "icon": "",
              "label": "Ó ju IllegalStateException"
            }
          ]
        }
      ],
      "optionOrderVersion": "9d7b97ef6cccf4e2"
    }
  },
  "testNames": {
    "java-test": "Ìdánwò Java"
  }
}
