library.html 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <html>
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  4. <title>Класс Library</title>
  5. </head>
  6. <body bgcolor="FFFFFF">
  7. <h1>Класс Library</h1>
  8. <p>Точка доступа для JAR библиотеки - это класс, расширяющий класс <code>Library</code>. Основная задача библиотеки - перечислить инструменты, доступные через библиотеку; чаще всего, все инструменты - это инструменты для добавления различных объявленных компонентов, то есть экземпляры класса <code>AddTool</code>, работающие с разными фабриками компонентов.</p>
  9. <h2>Components</h2>
  10. <pre>
  11. package com.cburch.gray;
  12. import java.util.Arrays;
  13. import java.util.List;
  14. import com.cburch.logisim.tools.AddTool;
  15. import com.cburch.logisim.tools.Library;
  16. /** The library of components that the user can access. */
  17. public class Components extends Library {
  18. /** Список всех инструментов, содержащихся в этой библиотеке. Технически,
  19. * библиотеки содержат инструменты, являющиеся несколько более общим понятием,
  20. * чем компоненты; с практической точки зрения, однако, вы чаще захотите
  21. * создать AddTools для новых компонентов, которые могут быть добавлены в схему.
  22. */
  23. private List&lt;AddTool&gt; tools;
  24. /** Создаёт экземпляр этой библиотеки. Этот конструктор - это то, к чему
  25. * Logisim получает доступ в первую очередь, когда открывает JAR файл: он ищет
  26. * метод-конструктор без аргументов объявленного пользователем класса.
  27. */
  28. public Components() {
  29. tools = Arrays.asList(new AddTool[] {
  30. new AddTool(new GrayIncrementer()),
  31. new AddTool(new SimpleGrayCounter()),
  32. new AddTool(new GrayCounter()),
  33. });
  34. }
  35. /** Возвращает имя библиотеки, которое будет видеть пользователь. */
  36. public String getDisplayName() {
  37. return "Gray Tools";
  38. }
  39. /** Возвращает список всех инструментов, доступных в этой библиотеке. */
  40. public List&lt;AddTool&gt; getTools() {
  41. return tools;
  42. }
  43. }
  44. </pre>
  45. <p><strong>Далее:</strong> <a href="simpctr.html">Простой счётчик кода Грея</a>.</p>
  46. </body>
  47. </html>