- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class SimpleEngine : MonoBehaviour
{
NavMeshAgent main;
Vector3 Pos2;
void Start()
{
main = GetComponent<NavMeshAgent>();
Pos2 = new Vector3(-43, 5, 0);
}
void Update()
{
main.SetDestination(Pos2);
if (GameObject.Find("Planedelete").GetComponent<TriggerDelete>().newDestroy == true)
{
Destroy(gameObject); // Само удаление!!!
}
if (GameObject.Find("PlaneLight").GetComponent<TriggerLight>().Activate == true)
{
if (GameObject.Find("TrafficLight").GetComponent<TrafficLightController>().Logistic == true)
{
main.speed = 80;
}
if (GameObject.Find("TrafficLight").GetComponent<TrafficLightController>().Logistic == false)
{
main.speed = 0;
}
}
if (GameObject.Find("PlaneLight").GetComponent<TriggerLight>().Activate == false)
{
main.speed = 80;
main.acceleration = 8;
}
}
}
Видишь, тут два сравнения? Сначала GetComponent сравниваем с TrafficLightController, потом TrafficLightController сравниваем с пустым списком.
Because of type erasure, type parameters cannot be determined at run-time.»
Выходит, что генерики существуют только в компайл-тайме. В рантайме их нет, значит, код должен работать и на старой виртуальной машине.
https://www.ibm.com/developerworks/ru/library/j-jtp02277/
«В теории можно взять классы, сгенерированные javac, и загрузить их в более раннюю JVM. На самом деле это и было целью создания группы JSR 14, группы Java Community Process, отвечающей за generic'и.
Использование режима JSR 14 позволяет писать код, использующий generic'и, autoboxing и цикл for-each в легких случаях, которых достаточно для большинства проектов. Это удобная, хотя и не поддерживаемая, возможность; при этом компилятор генерирует максимально совместимый байт-код за один проход.
В Java 5 есть языковые возможности, не поддерживаемые режимом JSR 14, например, такие как Iterable и перечисляемые типы. Альтернативный подход, применяемый в таких Open Source-проектах, как Retroweaver и Retrotranslator, предлагает генерировать байт-код, используя параметр -target 1.5, и затем механически преобразовывать байт-код в формат, совместимый с JDK 1.4
Первой появилась утилита Retroweaver, которая обрабатывает все случаи, обрабатываемые javac -target JSR 14, а также предоставляет еще несколько возможностей.»
ставь ударение правильно!
кака́я-то
В частности, тут описаны универсальные методы:
Пример: В угловых скобках указывается имя типа. При вызове ты его можешь опустить, если компилятор сам его может вывести из типов аргументов, или указать явно. Тут, например, круглые скобки пустые –— аргументов нет, поэтому приходится при вызове явно указывать спецификацию.
А вот дженерики в «Жаве»:
https://docs.oracle.com/javase/specs/jls/se6/html/classes.html#8.1.2
Заметь: в шестой, не в самой последней.
https://ru.wikipedia.org/wiki/Обобщённое_программирование
При динамической тупизации оно не нужно.
В «Java» его ввели с версии 5.0 (a. k. a. 1.5), в «C#» —– с .NET 2.0. И там, и там за основу синтаксиса взяли крестошаблоны. Аналогично поступили во «Фрипаскале» и в «Дельфи».
А вот в «D» и в языке «Ада» обошлись без угловых скобок.
Параметр может быть только один? По сути это работает, как мокроподстановка, но только со свитч-кейсом по типу?
Кокококой багор )))
Он отступы не соблюдает. Они заставляют расслабиться и без того маленький куриный мозг.
Если порыться в говне только по юзернейму, то в выдаче отображаются пустые комментарии, проверь.