Knigionline.co » Программное обеспечение » Java руководство для начинающих

Java руководство для начинающих - Шилдт Герберт (2012)

Java руководство для начинающих
  • Год:
    2012
  • Название:
    Java руководство для начинающих
  • Автор:
  • Жанр:
  • Оригинал:
    Английский
  • Язык:
    Русский
  • Издательство:
    Вильямс
  • Страниц:
    316
  • ISBN:
    978-5-8459-1770-6
  • Рейтинг:
    4.3 (4 голос)
  • Ваша оценка:
"Java: руководство для начинающих", автором которого является Герберт Шилдт, а также на его счету популярные по всему миру книги по языкам программирования, таким образом, чтобы у читателя получилось быстро освоить основные навыки программирования на Java. Полностью обновленное по версии Java Platform, Standard Edition 7, пятое издание этого учебного пособия начинается с обзора самых простейших основ, не исключая выполнение простых программ на Java и компилирование. Далее в нем описаны синтаксические конструкции и ключевые слова составляющие основу Java как языка программирования. Затем следует изложение наиболее передовых языковых средств Java, включая многопоточное и обобщенное программирование. Книга завершается введением в библиотеку Swing. Использованный в книге справочный и учебный материал позволяет читателю быстро и легко освоить основы программирования на Java. В целях упрощения процесса изучения Java, учебник построен следующим образом: - Базовые понятия и навыки. Все главы начинаются с перечня базовых понятий и навыков, которые будет необходимо усвоить читателю. - Обращение к знатоку. Во врезках под этим заголовком даны полезные рекомендации в форме вопрос-ответ. - Примеры для опробования. Это примеры небольших проектов, наглядно показывающие, как применять полученные навыки и знания на практике. - Упражнения для самопроверки. В конце каждой главы присутствуют контрольные вопросы и задания для проверки прочности изученного материала. - Подробные комментарии к примерам программ. Все примеры программ в этом учебном пособии снабжены подробными комментариями, которые описывают приемы программирования Java и демонстрируемые языковые средства.

Java руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги

Для того чтобы стало понятнее назначение модификатора доступа protected, рассмотрим следующий пример. Сначала изменим класс Book, объявив его переменные экземпляра защищенными, как показано ниже.

// Объявление защищенными переменных экземпляра в классе Book,

package BookPack;

public class Book {

// При объявлении этих переменных использован

// модификатор доступа protected.

protected String title;

protected String author;

protected int pubDate;

public Book(String t, String a, int d) {

title = t;

author = a;

pubDate = d;

}

public void show() {

System.out.println(title);

System.out.println(author);

System.out.println(pubDate);

System.out.println() ;

}

}

Теперь создадим подкласс ExtBook класса Book, а также класс ProtectDemo, в котором будет использоваться класс ExtBook. В классе ExtBook содержится поле, предназначенное для хранения названия издательства, а также несколько методов доступа. Оба эти класса принадлежат пакету bookpackext. Их исходный код приведен ниже.

// Пример применения модификатора protected,

package bookpackext;

class ExtBook extends bookpack.Book {

private String publisher;

public ExtBook(String t, String a, int d, String p) {

super(t, a, d);

publisher = p;

}

public void show() {

super.show();

System.out.println(publisher);

System.out.println() ;

}

public String getPublisher() { return publisher; }

public void setPublisher(String p) { publisher = p; }

/* Следующие операторы допустимы, поскольку подклассы имеют

право доступа к членам класса, объявленным защищенными. */

public String getTitle() { return title; }

public void setTitle(String t) { title = t; }

public String getAuthor() { return author; }

public void setAuthor(String a) { author = a; }

public int getPubDate() { return pubDate; }

public void setPubDate(int d) { pubDate = d; }

}

class ProtectDemo {

public static void main(String args[] ) {

ExtBook books[] = new ExtBook[5];

books[0] = new ExtBook("Java: A Beginner's Guide",

"Schildt", 2007, "Osborne/McGraw-Hill");

books[1] = new ExtBook("Java: The Complete Reference",

"Schildt", 2007, "Osborne/McGraw-Hill");

books[2] = new ExtBook("The Art of Java", "Schildt and Holmes", 2003,

"Osborne/McGraw-Hill");

books[3] = new ExtBook("Red Storm Rising", "Clancy", 1986, "Putnam");

books[4] = new ExtBook("On the Road",

"Kerouac", 1955, "Viking");

for(int i=0; i < books.length; i++) books[i].show();

// искать книги по автору

System.out.println("Showing all books by Schildt.");

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

if(books[i].getAuthor() == "Schildt")

System.out.println (books[i].getTitle());

// Доступ к защищенному полю эа пределами подклассов не разрешается.

// books[0].title = "test title"; // Ошибка: доступ запрещен!

}

}

Обратите внимание на код класса ExtBook. В связи с тем что класс ExtBook является подклассом, производным от класса Book, он имеет доступ к защищенным членам класса Book. Это правило действует, несмотря на то, что класс ExtBook находится в другом пакете. Следовательно, он может обращаться непосредственно к переменным экземпляра title, author и pubDate, что и было использовано при написании методов доступа. В то же время доступ к этим переменным экземпляра из класса ProtectDemo запрещен, поскольку класс ProtectDemo не является подклассом, производным от класса Book. Так, если удалить комментарии в приведенной ниже строке кода, рассматриваемая здесь программа не будет скомпилирована.

Перейти
Наш сайт автоматически запоминает страницу, где вы остановились, вы можете продолжить чтение в любой момент
Оставить комментарий