![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Объект – это набор данных и процедур, работающих с этими данными. Эти процедуры (подпрограммы) обработки данных объекта называются в Java методами.
Таким образом, при объектно-ориентированном подходе любые объекты реального мира и абстрактные концепции можно легко воплотить в программы.
В общем, объект может быть разделен на две компоненты: внешнюю и внутреннюю. Внешнюю часть, которую часто называют интерфейсом, составляют методы, осуществляющие взаимодействие с остальной частью программы. Внутреннюю часть составляют данные и методы, доступные только внутри объекта.
Новый объект (или экземпляр) создаётся из существующего класса при помощи ключевого слова new:
Cat barsik = new Cat(); // создали кота из класса Cat
Слева от оператора присваивания = определяется имя переменной. Переменная имеет тип Cat. В правой части выражения происходит выделение памяти для нового экземпляра класса Cat и инициализируется экземпляр. Оператор присваивания присваивает переменной ссылку на только что созданный объект.
Теперь подробнее.
Простой пример создания класса Box (коробка для кота):
class Box {
int width; // ширина коробки
int height; // высота коробки
int depth; // глубина коробки
}
Вам нужно создать отдельный файл Box.java, в который следует вставить код, описанный выше.
Сам класс - это просто шаблон, заготовка. Чтобы ваше приложение могло использовать данный шаблон, нужно создать на его основе объект при помощи ключевого слова new:
Box catbox = new Box; // создали реальный объект с именем catbox на основе шаблона Box
Объект catbox, объявленный в коде вашей программы, сразу займёт часть памяти на устройстве. При этом объект будет содержать собственные копии переменных экземпляра width, height, depth. Для доступа к этим переменным используется точка (.). Если мы хотим присвоить значение переменной width, то после создания объекта класса можете написать код:
catbox.width = 400; // ширина коробки для кота 400 миллиметров
Если мы хотим вычислить объём коробки, то нужно перемножить все значения размеров коробки:
Box catbox = new Box();
catbox.width = 400;
catbox.height = 200;
catbox.depth = 250;
int volume = catbox.width * catbox.height * catbox.depth;
tvInfo.setText("Объём коробки: " + volume);
Каждый объект содержит собственные копии переменных экземпляра. Вы можете создать несколько объектов на основе класса Box и присваивать разные значения для размеров коробки. При этом изменения переменных экземпляра одного объекта никак не влияют на переменные экземпляра другого объекта. Давайте объявим два объекта класса Box:
Box bigbox = new Box(); // большая коробка
Box smallbox = new Box(); // маленькая коробка
int volume;
// присвоим значения переменным для большой коробки
bigbox.width = 400;
bigbox.height = 200;
bigbox.depth = 250;
// присвоим значения переменным для маленькой коробки
smallbox.width = 200;
smallbox.height = 100;
smallbox.depth = 150;
// вычисляем объём первой коробки
volume = bigbox.width * bigbox.height * bigbox.depth;
tvInfo.setText("Объём большой коробки: " + volume + "\n");
// вычисляем объём маленькой коробки
volume = smallbox.width * smallbox.height * smallbox.depth;
tvInfo.append("Объём маленькой коробки: " + volume);
Когда мы используем конструкцию типа Box bigbox = new Box();, то в одной строке выполняем сразу два действия - объявляем переменную типа класса и резервируем память под объект.
Дата публикования: 2015-02-03; Прочитано: 441 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!