Запитання з тегом «instanceof»

instanceof - це оператор, доступний на деяких об'єктно-орієнтованих мовах, включаючи Java, php та JavaScript. Взагалі кажучи, це дозволяє програмісту перевірити, чи об'єкт, переданий як його лівий операнд, є примірником класу, визначеного правим операндом.

9
Отримання назви класу для екземпляра?
Як я дізнаюся ім'я класу, який створив екземпляр об'єкта в Python, якщо функція, з якої я це роблю, є базовим класом, з якого був похідний клас екземпляра? Думав, може, модуль перевірки, можливо, допоміг мені тут, але, здається, не дає мені того, чого я хочу. І якщо не розбирати __class__члена, я …

14
Чим відрізняється instanceof від Class.isAssignableFrom (…)?
Що з наступного краще? a instanceof B або B.class.isAssignableFrom(a.getClass()) Єдина відмінність, про яку я знаю, полягає в тому, що коли 'a' є недійсним, перший повертає помилкове значення, а другий видає виняток. Окрім цього, чи завжди вони дають однаковий результат?


24
Вплив на ефективність використання instanceof в Java
Я працюю над додатком, і один підхід до проектування передбачає надзвичайно важке використання instanceofоператора. Хоча я знаю, що OO-дизайн, як правило, намагається уникати використання instanceof, це вже інша історія, і це питання суто пов'язане з продуктивністю. Мені було цікаво, чи є вплив на продуктивність? Чи так само швидко ==? Наприклад, …

10
Що таке оператор instanceof в JavaScript?
instanceofКлючове слово в JavaScript може бути досить заплутаним , коли він вперше зустрічається, так як люди схильні думати , що JavaScript не є об'єктно-орієнтована мова програмування. Що це? Які проблеми вона вирішує? Коли це доречно і коли ні?

10
Чому instanceof повертає false для деяких літералів?
"foo" instanceof String //=> false "foo" instanceof Object //=> false true instanceof Boolean //=> false true instanceof Object //=> false false instanceof Boolean //=> false false instanceof Object //=> false // the tests against Object really don't make sense Літерали масиву та літератури об'єкта відповідають ... [0,1] instanceof Array //=> …

23
Чи можливо використовувати оператор instanceof в операторі комутатора?
У мене виникло питання використання корпусу комутатора для instanceofоб'єкта: Наприклад: мою проблему можна відтворити на Java: if(this instanceof A) doA(); else if(this instanceof B) doB(); else if(this instanceof C) doC(): Як це було б реалізовано за допомогою switch...case?


3
Javascript! Instanceof If Заява
Це дійсно основне запитання насправді просто для задоволення моєї цікавості, але чи є спосіб зробити щось подібне: if(obj !instanceof Array) { //The object is not an instance of Array } else { //The object is an instance of Array } Ключовим тут є можливість використання NOT! перед екземпляром. Як правило, …

11
Будь-яка причина віддати перевагу getClass () над instanceof при генерації .equals ()?
Я використовую Eclipse , для створення .equals()і .hashCode(), і є варіант з написом «Використовувати" InstanceOf "для порівняння типів». За замовчуванням ця опція не знімається та використовується .getClass()для порівняння типів. Чи є якийсь - небудь причини я вважаю за краще .getClass()більш instanceof? Без використання instanceof: if (obj == null) return false; …

17
Для чого використовується оператор 'instanceof' в Java?
Для чого instanceofвикористовується оператор? Я бачив подібні речі if (source instanceof Button) { //... } else { //... } Але нічого з цього не мало для мене сенсу. Я провів своє дослідження, але придумав лише приклади без будь-яких пояснень.
163 java  instanceof 

8
Java: Instanceof та Generics
Перш ніж переглянути свою загальну структуру даних щодо індексу значення, я хотів би дізнатися, чи не параметризовано навіть екземпляр типу this. Але Eclipse скаржиться, коли я роблю це: @Override public int indexOf(Object arg0) { if (!(arg0 instanceof E)) { return -1; } Це повідомлення про помилку: Неможливо виконати примірник перевірки …


4
instanceof Vs getClass ()
Я бачу виграш в продуктивності при використанні getClass()і ==оператора над instanceOfоператором. Object str = new Integer("2000"); long starttime = System.nanoTime(); if(str instanceof String) { System.out.println("its string"); } else { if (str instanceof Integer) { System.out.println("its integer"); } } System.out.println((System.nanoTime()-starttime)); starttime = System.nanoTime(); if(str.getClass() == String.class) { System.out.println("its string in equals"); …
114 java  class  instanceof 

6
Як виконати перевірку типу виконання в Dart?
У специфікації дротиків зазначено: Інформація про тип, що підтверджена, відображає типи об'єктів під час виконання і завжди може запитуватися за допомогою динамічних конструкцій перевірки типу (аналоги instanceOf, casts, typecase тощо іншими мовами). Звучить чудово, але немає instanceofподібного оператора. Отже, як нам виконати перевірку типу виконання в Dart? Чи можливо це …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.