Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/47: Рейтинг темы: голосов - 47, средняя оценка - 4.64
8 / 8 / 2
Регистрация: 10.07.2012
Сообщений: 38

классы-обертки и примитивные типы

17.10.2012, 16:11. Показов 9338. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите отличия,которые можно описать!(т.е. продемонстрировать кодом, а не на словах)
знаю одно отличие, что для примитивных типов ==, а для классов метод equals.
Заранее спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.10.2012, 16:11
Ответы с готовыми решениями:

Примитивные и ссылочные типы данных
Создайте класс который может выполнять следующие задачи: С клавиатуры вводятся символы, пока не встретится символ *. На экран вывести...

Классы-обёртки
Составить программу вычисления точного значения n!, где n > 12.

Классы обёртки java
Здравствуйте. Вопрос от новичка. Классы обёртки - это классы (внезапно), а при присваивании переменной содержащей ссылку на экземпляр...

13
 Аватар для Svoboda
70 / 70 / 17
Регистрация: 09.08.2011
Сообщений: 115
Записей в блоге: 3
17.10.2012, 16:15
Второе подобное сообщение за сегодня.
Сюда: Программа, демонстрирующая различие между классами-обертками и примитивными типами.
0
8 / 8 / 2
Регистрация: 10.07.2012
Сообщений: 38
17.10.2012, 16:19  [ТС]
Svoboda,спасибо, это отличие я знаю))не знаете ли вы еще какие-нибудь отличия?
0
0 / 0 / 0
Регистрация: 06.10.2012
Сообщений: 12
17.10.2012, 16:24
В классах-обертках создаются объекты, а не примитивы
0
8 / 8 / 2
Регистрация: 10.07.2012
Сообщений: 38
17.10.2012, 16:29  [ТС]
newl, компилятор компилирует =)

Добавлено через 3 минуты
то, что у примитивных нет методов тоже знаю..нужно отличие, которое явно можно показать) кроме примера по ссылке ничего в голову не лезет)
0
 Аватар для Svoboda
70 / 70 / 17
Регистрация: 09.08.2011
Сообщений: 115
Записей в блоге: 3
17.10.2012, 16:44
Lel'ka, вот ещё в голову пришло:

Java
1
2
3
4
Boolean bool = null;
System.out.println(bool); // null
boolean bool1 = false;
System.out.println(bool1);// false
Объект может быть null, примитивный тип - нет.

Добавлено через 7 минут
Java
1
2
3
String s = "25";
Integer i = new Integer(s);
System.out.println(i*5); // 125
Тоже удобно - простому int'у строку так сразу не присвоить, придется вызвать Integer.parseInt(s);б что более громоздко.
1
8 / 8 / 3
Регистрация: 27.09.2010
Сообщений: 50
29.10.2012, 01:28
Ну я конечно не Pro, но может тот факт что примитивы хранятся в стеке,а объекты классов обертки хранятся в куче? ну соответственно скорость доступа к данным разная... Может попробовать обработать код и таймером замерять время выполнения? Только стоит провести какую то масштабную операцию над данными, да бы увидеть разницу в скорости выполнения....
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
29.10.2012, 02:22
Есть ещё одна вещь, примитивы всегда некешированны а классы обёртки кешируются.
примитивы нельзя указывать в параметризированных классах как параметр
примитивы можно сравнивать ==, обёртки нет
массив примитивов нельзя кастануть в массив Objec, обёртки можно

ну и наконец мутабельность (хоть обёртки и немутабельны, но всё же)
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
29.10.2012, 16:34
А почему никто не вспомнил, что обобщение полностью построено на классах обертках? А это ого-гошеньки! (имхо)

Добавлено через 8 минут
upd.
Java
1
2
3
4
5
6
7
8
9
10
11
12
public class Ttest<T> {
    T ob;
    
    Ttest(T o) {
        ob = o;
    }
    
    T getOb() {
        return ob;
    }
    
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class TestTest {
    
    public static void main(String[] args) {
        Ttest<String> sOb= new Ttest<String>("Hello");
        Ttest<Integer> iOb = new Ttest<Integer>(1);
        Ttest<Double> dOb = new Ttest<Double>(2.0);
        // Ttest<int> intOb = new Ttest<int>(1); <--а это уже не работает!
        
        System.out.println(sOb.getOb());
        System.out.println(iOb.getOb());
        System.out.println(dOb.getOb());
        //System.out.println(intOb); <--ну тут понятно почему нельзя 
        
   
    }
}
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
29.10.2012, 21:03
Цитата Сообщение от tankomaz Посмотреть сообщение
А почему никто не вспомнил, что обобщение полностью построено на классах обертках? А это ого-гошеньки! (имхо)
а эту фразу из предыдущего поста вы как понимаете тогда?
примитивы нельзя указывать в параметризованных классах как параметр

и вообще где вы слышали термин обобщение?
во всех книгах generics переводятся как параметризованный, а не прямым переводом в лоб
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
30.10.2012, 06:47
Цитата Сообщение от mutagen Посмотреть сообщение
и вообще где вы слышали термин обобщение?
Например в википедии - http://ru.wikipedia.org/wiki/Критика_Java там есть раздел "Обобщения в Java:".
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
30.10.2012, 11:55
Цитата Сообщение от turbanoff Посмотреть сообщение
Например в википедии - http://ru.wikipedia.org/wiki/Критика_Java там есть раздел "Обобщения в Java:".
переводчик статьи на русский не озаботился как правильно переводить термин

я поискал гуглем и приятно удивлён что таких горе-перводчиков немного, всего 5 ссылок, зато "параметризация java" выдало 100500, в который раз убеждаюсь что переводить книги со спец терминами зло умножающее беспорядок.
Они бы ещё фамилии переводили, например:
Java Generics. Adam Brown - Ява Обобщения. Адам Коричневый
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
30.10.2012, 13:16
Цитата Сообщение от mutagen Посмотреть сообщение
в который раз убеждаюсь что переводить книги со спец терминами зло умножающее беспорядок.
У меня лежит GoF "шаблоны проектирования" на русском. Переводчик перевел названия шаблонов. Повесить, расстрелять, утопить, закопать, выкопать, клонировать, повесить, расстрелять, утопить и закопать всех клонов. Я ее не могу читать. Даже зная все термины - переводить половину текста обратно на английский занятие не для меня.
0
1 / 1 / 0
Регистрация: 28.02.2012
Сообщений: 10
18.08.2013, 18:53
Цитата Сообщение от Skipy Посмотреть сообщение
Переводчик перевел названия шаблонов. Повесить, расстрелять, утопить, закопать, выкопать, клонировать, повесить, расстрелять, утопить и закопать всех клонов.
Просто убило!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.08.2013, 18:53
Помогаю со студенческими работами здесь

Чем плохи классы обертки?
Почему плохо использовать классы обертки?

Сериализация указателей на примитивные типы
Прошу пользователей пакета Serialization подсказать, что требуется добавить в код, чтобы можно было сериализовать данные через указатели на...

Типы и классы
Здравствуйте форумчане, обращаюсь сюда из за неумения раскрыть суть в книгах и в статьях в интернет ресурсах, хочется чтобы всё было...

Классы и типы данных
Имеется такая программа, предназначена для подсчета максимального рейтинга. Скажу сразу, программа не моя. Так вот в чем загвоздка, в...

Generic классы, типы которых, ссылаются друг на друга. Идея имеет право на жизнь?
Здравствуйте, имеются объекты класса Element&lt;S,E&gt;, которые хранятся и обрабатываются в экземплярах класса ElementSystem&lt;S, E&gt;. При...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru