Inner Classes
Named classes defined inside other classes for encapsulation and organization
class Outer {
class Inner {
function getValue() {
return "inner";
}
}
function getInner() {
return new Inner();
}
}
result = new Outer().getInner().getValue();
// Result: "inner"📋 Table of Contents
📥 Defining Inner Classes
🆕 Instantiating Inner Classes
📦 Multiple Inner Classes
🪆 Nested Inner Classes
🔗 Inheritance
🧊 Static Members
🔌 Accessing Outer Class Statics
🏗️ Hoisting
🌍 External Access
Instantiating via $ Syntax
$ SyntaxAccessing Statics via $ Syntax
$ SyntaxNested Inner Classes via Chained $
$📥 Importing Inner Classes
Importing with Alias
Accessing Statics After Import
Referencing Inner Classes via Outer Class
Using createObject()
createObject()📊 Metadata
$bx Metadata
$bx MetadatagetMetadata() Struct
getMetadata() StructgetClassMetadata()
getClassMetadata()isInstanceOf() with Inner Classes
isInstanceOf() with Inner Classes☕ Java Interoperability
⚠️ Naming Restrictions
Outer Class Name is Reserved
Inner Class Cannot Match File Name
Inner Class Names Cannot Be Assigned as Statics
Last updated
Was this helpful?
