Junior
Классҳои Wrapper (Wrapper classes) дар Java чист?
sobes.tech AI
Ҷавоб аз AI
Java-дағы Wrapper кластар — бұл примитивті типтердің объектіге бағытталған көрінісін қамтамасыз ететін кластар. Олар коллекциялар немесе көпжіптілікпен жұмыс кезінде объектілер қажет болған жағдайларда примитивті мәндерді пайдалануға мүмкіндік береді.
Негізгі Wrapper кластар:
ByteShortIntegerLongFloatDoubleBooleanCharacter
Қолдану мысалдары:
Примитивті пайдалану:
// Примитивті тип
int x = 10;
Wrapper класты пайдалану:
// Wrapper класс
Integer y = new Integer(20); // Ескі әдіс
Integer z = 30; // Автобоксинг (примитивті объектке автоматты түрлендіру)
Примитивтер мен Wrapper объектілерінің арасындағы түрлендіру:
- Автобоксинг: Примитивті автоматты түрде Wrapper объектісіне айналады.
// Автобоксинг int primitiveInt = 100; Integer wrapperInt = primitiveInt; - Авунboxing: Wrapper объектісі автоматты түрде примитивке айналады.
// Авунboxing Integer wrapperInteger = new Integer(200); int primitiveInteger = wrapperInteger;
Wrapper кластардың артықшылықтары:
- Коллекциялармен жұмыс: (
List,Set,Map) тек объектілерді сақтайды. nullмәнімен жұмыс: Wrapper объектілерінің мәніnullболуы мүмкін, ал primitives — жоқ.- Құнды түрлендіру, салыстыру әдістері: Wrapper кластарында жолдарға түрлендіру, мәндерді салыстыру сияқты әдістер бар. Мысалы,
Integer.parseInt(String s). - Генериктермен жұмыс: Генериктер тек объектілермен жұмыс істейді.
Кемшіліктері:
- Жадыны көп пайдалану: Wrapper объектілері primitives-ке қарағанда көп жады алады.
- Өнімділіктің төмендеуі: Автоқорау және автоматты түрде түрлендіру өнімділікті аздап төмендетуі мүмкін.
Коллекцияда қолдану мысалы:
import java.util.ArrayList;
import java.util.List;
public class WrapperExample {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(10); // Автобоксинг
numbers.add(new Integer(20)); // Объектіні нақты жасау
int firstNum = numbers.get(0); // Авунboxing
System.out.println(firstNum);
}
}