Nesne
Nesne, öznitelikler için gerçek değerleri içeren ve sınıfında tanımlanan metotları gerçekleştirebilen bir sınıf örneğidir.
Types: 1. Remote code execution. 2. Privilege escalation. 3. Denial of Service (DoS). Phases: 1. Reconnaissance. 2. Triggering vulnerability. 3. Payload delivery.
graph LR
Center["Nesne"]:::main
Pre_class["class"]:::pre --> Center
click Pre_class "/terms/class"
Rel_class["class"]:::related -.-> Center
click Rel_class "/terms/class"
Rel_graph_data_structure["graph-data-structure"]:::related -.-> Center
click Rel_graph_data_structure "/terms/graph-data-structure"
Rel_hash_table["hash-table"]:::related -.-> Center
click Rel_hash_table "/terms/hash-table"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 5 yaşındaki gibi açıkla
Bir sınıf bir kurabiye kalıbıysa (şekil), o zaman bir nesne gerçek bir kurabiyedir! Her kurabiye (nesne), hepsi aynı kalıptan (sınıf) gelse bile kendi çikolata parçalarına ve kremasına (veriye) sahiptir.
🤓 Expert Deep Dive
Nesne kimliği ile eşitlik: '==' kimliği test eder, '.equals()' değer eşitliğini test eder. Nesne Havuzu (Object Pooling), ayırma ek yükünü önlemek için örnekleri yeniden kullanır. Stajyer nesneler (interned objects - dizeler, küçük tamsayılar) tek bir örneği paylaşır. Prototip tabanlı OOP (JavaScript), sınıflar olmadan diğer nesnelerden nesneler oluşturur. Yansıma (Reflection), çalışma zamanı nesne denetimini sağlar. Serileştirme (Serialization), nesneleri bayt akışlarına dönüştürür.