Центрдистанционногообучения
Интерфейсы
•Вы могли бы написать класс, который реализует определенные методы (такой как compareTo) без формальной реализации интерфейса (Comparable)
•Тем не менее, формально, установление взаимосвязи между классом и интерфейсом позволяет, которые позволяет Java установить связи с объектом в некоторых отношениях
Интерфейсы являются одним из ключевых аспектов объектно-ориентированного проектирования в Java!
6-36 online.mirea.ru
Центрдистанционногообучения
Класс ArrayList
•ArrayList в Java представляет собой изменяемый список объектов.
•Мы можем добавлять, удалять, находить, сортировать и заменять элементы в этом списке.
online.mirea.ru
Центрдистанционногообучения
Пример с ArrayList
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*;
public class DotsPanel extends JPanel{
private final int |
WIDTH = 300, HEIGHT = 200; |
private final int |
RADIUS = 6; |
private ArrayList pointList; |
|
private int count; |
и. |
//Устанэтупанель,вливаемчтобыслушатьсобытия |
|
public DotsPanel() { |
//конструкторкласса |
pointList = new ArrayList();
count = 0;
addMouseListener (new DotsListener()); setBackground (Color.black);
online.mirea.ru
setPreferredSize (new Dimension(WIDTH, HEIGHT)); }
Центрдистанционногообучения
//рисувсеточки,которыем хранятсявсписке
public void paintComponent (Graphics page) { super.paintComponent(page);
page.setColor (Color.green);
// создаем итератор для ArrayList точек
Iterator pointIterator = pointList.iterator(); while (pointIterator.hasNext()) {
Point drawPoint = (Point) pointIterator.next();
page.fillOval (drawPoint.x - RADIUS, drawPoint.y -
RADIUS,
RADIUS * 2, RADIUS * 2);
}
page.drawString ("Count: " + count, 5, 15);
}
online.mirea.ru
Центрдистанционногообучения
//классслушателяобмы. ий
//****************************************************************
*
private class DotsListener implements MouseListener { // добавляеттекущуюточкусписокточерерисовываемк
//Прикаждомнажатиикнопкимыши.
public void mousePressed (MouseEvent event) { pointList.add (event.getPoint()); count++;
repaint();
// Обеспечитьпустыеопреддлян используемыхленияметодов событий.
public void mouseClicked (MouseEvent event) {} public void mouseReleased (MouseEvent event) {} public void mouseEntered (MouseEvent event) {} public void mouseExited (MouseEvent event) {}
}
}
online.mirea.ru