के लिए योग्य ऑब्जेक्ट्स यह प्रश्न Kathy SierraSCJP 1.6 से लिया गया था। कचरा संग्रह के लिए कितने ऑब्जेक्ट योग्य हैं?कचरा संग्रह
कैथी सिएरा के उत्तर के अनुसार, यह C
है। इसका मतलब है कि दो वस्तुएं कचरा संग्रह के लिए योग्य हैं। मैंने जवाब का स्पष्टीकरण दिया है। लेकिन c3
क्यों garbage collection (जीसी) के लिए योग्य नहीं है?
class CardBoard {
Short story = 200;
CardBoard go(CardBoard cb) {
cb = null;
return cb;
}
public static void main(String[] args) {
CardBoard c1 = new CardBoard();
CardBoard c2 = new CardBoard();
CardBoard c3 = c1.go(c2);
c1 = null;
// Do stuff
} }
जब // Do stuff
तक पहुँच जाता है, कितने वस्तुओं जीसी लिए योग्य हैं?
- A: 0
- बी: 1
- सी: 2
- डी: संकलन में विफल रहता है
- ई: यह पता करने के लिए
- एफ संभव नहीं है: एक अपवाद कार्यावधि में फेंक दिया जाता है
उत्तर:
- सी सही है। केवल एक कार्डबोर्ड ऑब्जेक्ट (सी 1) योग्य है, लेकिन इसमें
Short
रैपर ऑब्जेक्ट है जो योग्य भी है। - ए, बी, डी, ई, और एफ उपरोक्त के आधार पर गलत हैं। (वस्तुनिष्ठ 7,4)
कड़ाई से बोलना 'सी 3' जीसी के लिए योग्य नहीं हो सकता है, क्योंकि * यह ऑब्जेक्ट नहीं है *। यह एक चर है एक वस्तु को इंगित कर सकता है। –
सही उत्तर है [उन सभी] [http://stackoverflow.com/a/26645534/2711488) ... – Holger