Другое событие NullPointerException
возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.
String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals
для гарантированного непустого объекта.
Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null
.
Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.
String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Лучший подход для встраивания SWF в страницу HTML должен использовать SWFObject.
Это - простая библиотека JavaScript с открытым исходным кодом, которая является простым в использовании и благоприятным для стандартов методом для встраивания содержания Flash.
Это также предлагает обнаружение версии Flash player. Если пользователь не будет иметь версии Flash требуемой или отключит JavaScript, они будут видеть альтернативное содержание. Можно также пользоваться этой библиотекой для инициирования обновления Flash player. Как только пользователь обновил, они будут перенаправлены назад к странице.
пример из документации:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject dynamic embed - step 3</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0");
</script>
</head>
<body>
<div id="myContent">
<p>Alternative content</p>
</div>
</body>
</html>
А хороший инструмент для использования наряду с этим является HTML SWFObject и генератором JavaScript . Это в основном генерирует HTML и JavaScript, необходимо встроить Flash с помощью SWFObject. Идет с очень простым UI для Вас для ввода параметров.
Это настоятельно рекомендовано и очень просто использовать.
Поскольку упомянутый Объект SWF является большим. UFO достойный внимания также
Если Вы пользуетесь одной из тех js библиотек для вставки Flash, я предлагаю добавить тег embed простого объекта в <noscript/>
.
<object width="100" height="100">
<param name="movie" value="file.swf">
<embed src="file.swf" width="100" height="100">
</embed>
</object>
Я использую http://wiltgen.net/objecty/ , это помогает встроить мультимедийный контент и избежать IE "щелчок для активации" проблемы.