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 руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги

public static void main (String args.[]) {

Test ob = new Test();

int a = 15, b = 20;

System.out.println("a and b before call: " +

a + " " + b);

ob.noChange(a, b);

System.out.println("a and b after call: " +

a + " " + b);

}

}

Ниже приведен результат выполнения данной программы.

a and b before call: 15 20

a and b after call: 15 20

Нетрудно заметить, что действия, выполняемые в теле метода noChange (), не оказывают никакого влияния на значения переменных а и b в вызывающем методе.

Если методу передается объект, то ситуация меняется коренным образом, поскольку объекты передаются неявно по ссылке. Не следует забывать, что создание переменной типа класса, по существу, означает формирование ссылки на объект этого класса. И методу на самом деле передается только ссылка, а не сам объект. Поэтому при передаче этой ссылки методу принимающий ее параметр будет ссылаться на тот же самый объект, на который ссылается аргумент. Это означает, что и аргумент, и параметр ссылается на один и тот же объект и что объекты, по существу, передаются методам по ссылке. Таким образом, объект в методе будет оказывать влияние на объект, используемый в качестве аргумента. Для примера рассмотрим следующую программу:

// Объекты передаются методам по ссылке,

class Test {

int a, b;

Test(int i, int j) {

a = i;

b = j;

}

/* Передача объекта методу. Теперь переменные ob.a b и ob.b

из передаваемого объекта можно изменить. */

void change(Test ob) {

ob.a = ob.a + ob.b;

ob.b = -ob.b;

}

}

class CallByRef {

public static void main(String args[]) {

Test ob = new Test(15, 20);

System.out.println("ob.a and ob.b before call: " +

ob.a + " " + ob.b);

ob.change(ob);

System.out.println("ob.a and ob.b after call: " +

ob.a + " " + ob.b);

}

}

Выполнение этой программы дает следующий результат:

ob.a and ob.b before call: 15 20

ob.a and ob.b after call: 35 -20

Как видите, в данном случае действия в методе change () оказывают влияние на объект, используемый в качестве аргумента этого метода.

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

Возврат объектов

Метод может возвращать данные любого типа, включая и типы классов. Например, объект приведенного ниже класса ErrorMsg может быть использован для сообщения об ошибке. В этом классе имеется метод getErrorMsg (), который возвращает объект типа String, описывающий ошибку. Объект типа String строится на основании кода ошибки, переданного методу.

// Возврат объекта типа String,

class ErrorMsg {

String msgs[] = {

"Output Error",

"Input Error",

"Disk Full",

"Index Out-Of-Bounds"

};

// возвратить объект типа String в виде сообщения об ошибке

String getErrorMsg(int i) {

if(i >=0 & i < msgs.length)

return msgs[i];

else

return "Invalid Error Code";

}

}

class ErrMsg {

public static void main(String args[]) {

ErrorMsg err = new ErrorMsg();

System.out.println(err.getErrorMsg(2));

System.out.println(err.getErrorMsg(19));

}

}

Выполнение этой программы дает следующий результат:

Disk Full

Invalid Error Code

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