Сделать стартовой | Добавить в избранное
 Зарегистрироваться
 Забыл пароль?

 
 
 Категории
   
 
 
 
 
 
 
  Урок 9. Основы ООП - введение в классы
Категория: Java | Автор: Miheeva | (6 июля 2010)
 
Обновлено: 31.01.2011 - 17:38


Цели урока

  • Познакомиться с базовым элементом объектно-ориентированного программирования в языке Java – классом
  • Узнать, что такое поля, методы класса
  • Познакомиться с ключевыми словами this, new

Цели урока

  • Познакомиться с базовым элементом объектно-ориентированного программирования в языке Java – классом
  • Узнать, что такое поля, методы класса
  • Познакомиться с ключевыми словами this, new

Описание урока

В данном уроке рассказывается о базовом элементе объектно-ориентированного программирования в языке Java - классе, поскольку любое Java-приложение является набором классов.

Рассматривается структура объявления заголовка класса и его тела, которое состоит из элементов: полей, методов и конструкторов. В уроке показано как описываются поля класса, какие используются модификаторы при объявлении класса, описании полей и методов.

Метод должен быть определен для доступа к данным, которые хранятся в классе. Метод определяется как действительная реализация операций над объектом. Он всегда вызывается относительно какого-либо объекта соответствующего класса. Как объявляется метод, какова его структура, каковы правила передачи параметров в методы, как используется инструкция return , можно узнать посмотрев данный видео урок.

Иногда у метода возникает необходимость обращаться к объекту, который его вызвал. Для этого Java определяет ключевое слово this.
Любой класс определяет новый тип данных.Объявление класса создает только лишь шаблон, но не реальный объект. Чтобы создать объект, используется ключевое слово new. В рамках данного урока рассмотрено где и как используются this и new.




Скачать видеоурок в формате mp4 (depositfiles)

Скачать видеоурок в формате mp4 (letitbit)

Скачать видеоурок в формате mp4 (ifolder)

Пожертвовать

Задание

  1. Попробуйте создать класс Person (Человек) с четырьмя свойствами (полями):
    • firstName (имя)
    • middleName (отчество )
    • lastName (фамилия)
    • birthYear (год рождения)
    Данный класс Вы планируете использовать в программе, которая позволяет сотруднику кадровой службы вводить данные сотрудника и сохранять их в базе данных компании для последующей обработки.
  2. Класс Person должен содержать следующие методы:
    • getFullName ( возвращает полное имя человека)
    • getAge (возвращает возраст человека, но основании передаваемого в метод параметра currentYear (текущий год))
    • getInfo (данный метод выводит информацию на экран о человеке: его полное имя, возраст)
    • setInfo (записывает данные в поля)
  3. Создайте 3 объекта класса Person. Продемонстрируйте работу методов для каждого объекта.

Ответы

Раскрыть
Пример решения задания


//Создаем класс

public class Person {

//Объявляем поля класса

private String firstName; //имя
private String middleName; //отчество
private String lastName; //фамилия
private int birthYear; //год рождения

//Метод возвращает полное имя человека

public String getFullName(){

return firstName + " " + middleName + " " + lastName;
}

//Метод записывает данные в поля

public void setInfo (String firstName, String middleName,
String lastName, int birthYear){
this.firstName = firstName;
this.middleName = middleName;
this.lastName = lastName;
this.birthYear = birthYear;
}

//Метод возвращает возраст человека.
// currentYear - текущий год

public int getAge (int currentYear){

return currentYear - birthYear;
}

//Метод выводит полную информацию о человеке

public String getInfo (int currentYear){

return getFullName () + " возраст " + getAge (currentYear);
}

//Метод main - главный метод программы

public static void main(String[] args) {

//объявляем массив из 3-х элементов типа 'Person'

Person [] pers = new Person [3];

//создаем экземпляры класса Person,
//для каждого элемента массива

pers[0] = new Person ();
pers[1] = new Person ();
pers[2] = new Person ();

//вызываем метод setInfo с передачей ему параметров

pers[0].setInfo("Иван", "Иванович", "Иванов", 1962);
pers[1].setInfo("Сергей", "Петрович", "Ванин", 1985);
pers[2].setInfo("Анна", "Ивановна", "Мишина", 1996);

//поскольку у нас массив, то воспользуемся
//циклической конструкцией for
//свойство length возвращает длину массива

for (int i=0; i < pers.length; i++){

//выводим на консоль полную информацию

System.out.println(pers[i].getInfo(2010));
}


}

}




 

КОММЕНТАРИИ

(18.07.2010 - 04:22) цитировать
 
 
Наконец-то урок. Спасибо преогромное! И ещё вопрос: А что случилось с предыдущим автором уроков?
 
 
(23.07.2010 - 18:05) цитировать
 
 
admin Предыдущий автор уроков в творческом отпуске :), но это не означает, что он не принимает участия в создании ваших любимых видео уроков по Java!
 
 
(30.07.2010 - 19:16) цитировать
 
 
Надеюсь, что вскоре работа пойдёт полным ходом :)
Кстати, а я что один посетитель сайта? Что-то за пол-месяца прокомментировал только я smile
 
 
(3.08.2010 - 06:10) цитировать
 
 
Спасибо большое Вам за помощь нам- новичкам вступающим в мир Java! Терпения, творческих успехов, побольше новых уроков!
 
 
(8.09.2010 - 18:38) цитировать
 
 
описание...
 
 
(7.10.2010 - 23:25) цитировать
 
 
o4en horowo izlojeno, dostupno i ponatno)
spasibo
 
 
(21.10.2010 - 22:42) цитировать
 
 
Да... я когда учился ООП был другой... я чуть на стену не полез когда смотрел этот урок. В целом если знать программирование, и использовать эти уроки как вводные в Java то очень не плохо!
 
 
(1.11.2010 - 05:18) цитировать
 
 
Самое интересное начинается, не бросайте нас :) Даёшь уроки! :)

Спасибо!
 
 
(4.11.2010 - 03:49) цитировать
 
 
Спасибо за ваши уроки! Для начинающих очень понятно и подробно изложено. Голос предыдущего автора было приятнее на слух чем голос девушки в этом видео.
Ждем новых уроков.= )
 
 
(8.12.2010 - 18:18) цитировать
 
 
Ребята, вы молодцы! Отличные уроки. Только начал изучать Java, и надеюсь, ваши уроки помогут мне его освоить.
По возможности обязательно поблагодарю денежкой.
Большое вам спасибо!
 
 
(15.12.2010 - 01:09) цитировать
 
 
Здравствуйте всем! Неужели настолько всем всё хорошо? Неужели ни у кого не возникло ни проблем, ни вопросов связанных с настройкой и русификацией Eclipse? Ведь самой среде разработки был уделён только один урок и то частично. Может кто знает, откликнитесь?cry
 
 
(15.12.2010 - 22:40) цитировать
 
 
Автор, Вы где? не молчите!!!!
 
 
(16.12.2010 - 03:02) цитировать
 
 
Если есть желание русифицировать Eclipse, то рекомендую посетить сайт проекта Eclipse Babel - http://www.eclipse.org/babel/

В уроках мы работаем в Eclipse Ganymede. Babel Language Packs for Ganymede (русский язык) можно найти по адресу http://download.eclipse.org/technology/babel/babel_language_packs/R0.8.1/ganymede.php#ru

Для русификации Eclipse необходимо выполнить следующие действия:
1. Скачиваем Babel Language Pack for Ganymede. Например, BabelLanguagePack-eclipse-ru
2. Копируем папки из распакованного архива (features и plugins) в папку, где стоит Eclipse
3. Соглашаемся заменить файлы
4. Запускаем Eclipse
Примечание к пункту 4: если ОС ставили на английском, то запуск Eclipse производится через командную строку с параметром -nl ru.

Настройка Eclipse - очень объемная тема. В первом уроке производятся только те настройки, которые необходимы для нормальной работы среды. Как правило, знания этих основных моментов вполне достаточно для решения стандартных задач.
 
 
(16.12.2010 - 03:58) цитировать
 
 
Большущее Вам спасибо!!! А что означают эти проекты, в частности - проект Babel?
И чем отличаются Helios от Ganymede? Я скачал дистрибутив Eclipse classic, как было предложено в первом уроке. Он оказался Helios. Его уже нельзя русифицировать? И к какому проекту относится Eclipse classic? За ранее благодарю!!!
 
 
(16.12.2010 - 13:53) цитировать
 
 
В рамках проекта Babel производится работа по переводу Eclipse на различные языки мира, в том числе и на русский.
Helios и Ganymede - это различные версии Eclipse. Версия Helios более новая, для нее разработаны Babel Language Packs for Helios http://download.eclipse.org/technology/babel/babel_language_packs/R0.8.1/helios.php#ru. Порядок русификации аналогичен описанному ранее.
Eclipse Classic содержит в себе наиболее востребованные инструменты для разработки приложений, т.е. Classic - это основная комплектация среды разработки Eclipse.
 
 
(28.12.2010 - 22:48) цитировать
 
 
Derzskyi ваш сайт и ваша работа достойны уважения, но этот урок - исключение.
сам урок и информация очень полезны, но голос озвучки.
пожалуйста, замените его. хоть на что-нибудь. хоть на говорящего попугая. это навозможно слушать. я выдержал ровно 12 секунд, после чего меня спасли всеми нами любимые Alt+F4.

если нельзя попросить того, кто озвучивал уроки ранее, озвучить видео, то пусть это сделает кто угодно, но НЕ эта женщина.
 
 
(31.12.2010 - 02:40) цитировать
 
 
Произношение в уроке отчетливое. То, что кому-то не нравится звучание голоса, не является причиной для замены звуковой дорожки видео.
 
 
(22.01.2011 - 14:45) цитировать
 
 
если кого-то что-то не устраивает валим на другой сайт!
похожих работ уйма.
главное то, что эта женщина не Экает и произношение норм.

2 Derzskyi
 
 
(31.01.2011 - 05:44) цитировать
 
 
спасибо за урок! Всё классно и доступно.
Хотел бы, Вас попросить, рассказать про следующее: "Ввод данных с клавиатуры". (Хотя бы просто, в тексте, не видеороликом =))
Сам пользуюсь этим:
--------------------------------------------------
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Pow {

public static BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

public static double input() throws IOException{
double temp;
temp = Double.parseDouble(input.readLine());
return temp;
}

public static void main(String[] args) throws IOException{
int a;
double b;

System.out.print("Введите a: ");
a = (int)input();
System.out.print("Введите b: ");
b = input();
}
}
--------------------------------------------------
P.S. Думаю, есть метод по корректнее... Подскажите, кто что думает. Заранее благодарю!
 
 
(2.03.2018 - 21:21) цитировать
 
 
грузоперевозки оренбург недорого
Работа во всех городах России. Работа в Москве. Грузчик. hh.ru.
грузоперевозки оренбург газель недорого по городу
[img]http:/ /www.vartum.ru/loadfiles/moduls/doska/bigfoto/kurg an-1068287861.jpg" alt="http//orenburg.buyreklama.com/orenburg/photo s/25897851/f15bd94d8b7229f55c872f1ce772dd.jpg[/i mg] br /[url=http//avtomix56.ru/]грузоперевозки оренбург недорого br /Работа во всех городах России. Работа в Москве. Грузчик. hh.ru. br /грузоперевозки оренбург газель недорого по городу br /[img]http/ /www.vartum.ru/loadfiles/moduls/doska/bigfoto/kurg an-1068287861.jpg" />
Работа Грузчик Оренбург. Кладовщик- грузчик. Работа на складе,стройматериалов.Зарплата указана на период испытательного срока. Требования: согласно ТК РФ Условия: должностная инструкция График работы:Понедельник-пятница с 09:00-18:00. Кладовщик- грузчик. Прием, отпуск, хранение, перемещение ТМЦ, составление необходимой документации, участие в инвентаризациях. Требования: Знание нормативно - технической документации по приемке‚ хранению‚ учёту и отпуску ТМЦ, Опыт работы приветствуется. Водитель на погрузчик / Грузчик. Погрузка и выгрузка грузов. Требования: Удостоверение на погрузчик. Опыт работы на вилочном дизельном погрузчике от 3 лет Условия: Оформление по ТК РФ. Сменный график работы. Сменный график работы на территории работодателя.
Заказ пассажирской Газели в Оренбурге - http://avtomix56.ru/gruzchiki/
 
 
(5.03.2018 - 10:57) цитировать
 
 
Брал <a href="http://www.wpripper.ru/" / rel="nofollow">ЗДЕСЬ</a> в разделе ХАЛЯВА Премиум плагин для wordpress с переводом на русский <a href="http://www.wpripper.ru/" / rel="nofollow">Тыц Сюды</a>
 
 
(14.04.2019 - 16:14) цитировать
 
 
Вс 14 апр 2019 16:04:38
Прошли годы, а вы ( Вы ) нужны Спасибо. С уважением.
 
 
 Добавление комментария:
 
Имя:
Пароль: (если зарегистрирован)
Email: (обязательно!)

теги форматирования

добавить смайлы
 
 
 
 
 
 
Copyright © 2007-2008 ITLIFT.ru
Powered by CMS 2z project
SQL запросов: 4 | Генерация страницы: 0.05 сек 
[debug] {debug_queries}
{debug_profiler} [/debug]