Junior — Middle
Программалоодо ички класс жана ички класс арасындагы айырма эмнеде?
sobes.tech AI
AIден жооп
Javaда (жана Androidда) ичке класс — бул башка класс ичинде жарыяланган кез келген класс. Ичке класс түрлөрү экиге бөлүнөт:
- Статикалык ичке класс (static nested class) —
staticмодификатору менен жарыяланат. Ал сырткы классдын статикалык эмес мүчөлөрүнө түздөн-түз кире албайт. - Ички класс (inner class) —
staticмодификатору жок ичке класс. Ал сырткы класс менен байланышта болуп, анын статикалык эмес талааларына жана методдоруна кире алат.
Мисал:
class Outer {
private int outerField = 10;
static class StaticNested {
void print() {
// outerFieldга түздөн-түз кайрылуу мүмкүн эмес
System.out.println("Статикалык ичке класс");
}
}
class Inner {
void print() {
// outerFieldга кайрылуу мүмкүн
System.out.println("Ичке класс, outerField = " + outerField);
}
}
}
Негизги айырма — ички класс сырткы класстын объектисине байланыштуу жана анын статикалык эмес мүчөлөрүнө кире алат, ал эми статикалык ичке класс — ал мындай мүмкүнчүлүккө ээ эмес.