オブジェクト
オブジェクトは、属性の実際の値を含み、そのクラスで定義されたメソッドを実行できるクラスのインスタンスです。
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["オブジェクト"]:::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歳でもわかるように説明
クラスがクッキーの型(形)なら、オブジェクトは本物のクッキーです!各クッキー(オブジェクト)は、すべて同じ型(クラス)から来ていますが、独自のチョコチップとフロスティング(データ)を持っています。
🤓 Expert Deep Dive
オブジェクトの同一性対等価性:'=='は同一性をテストし、'.equals()'は値の等価性をテストします。オブジェクトプーリングは、割り当てのオーバーヘッドを回避するためにインスタンスを再利用します。インターンされたオブジェクト(文字列、小さな整数)は単一のインスタンスを共有します。プロトタイプベースのOOP(JavaScript)は、クラスなしで他のオブジェクトからオブジェクトを作成します。リフレクションは実行時のオブジェクト検査を可能にします。シリアライゼーションはオブジェクトをバイトストリームに変換します。
🔗 関連用語
前提知識: