java. lang (Java Language) Package

Содержание

Слайд 2

Goals
Get to know “java.lang” package and classes
Get to know mechanism of exception

Goals Get to know “java.lang” package and classes Get to know mechanism of exception handling
handling

Слайд 3

java.lang package

Основные классы пакета java.lang:
• Object
• String
• Wrapper Clases
• Math,
• System,
• Runtime,

java.lang package Основные классы пакета java.lang: • Object • String • Wrapper
Throwable/Exception/Error
...

Слайд 4

java.lang.Object

В Java “почти” все данные является объектами и наследуют Object.
"Основные" методы класса

java.lang.Object В Java “почти” все данные является объектами и наследуют Object. "Основные"
Object:
• boolean equals(Object)
• int hashCode()
• String toString()
Д.з.: Изучить как реализованы эти методы в классах java.lang.String, java.lang.Integer и java.util.ArrayList.

Слайд 5

Оператор instanceof

Object obj = new Object();
if (obj instanceof Object) {...}
...
String[] strArray

Оператор instanceof Object obj = new Object(); if (obj instanceof Object) {...}
= {};
if (strArray instanceof String[]) {...}
...
int[] intArray = {1, 2, 3};
if (intArray[0] instanceof Object) {...}

Слайд 6

java.lang.String

String - контейнер для 16-bit Unicode-символов.
Все строковые литералы в Java (например

java.lang.String String - контейнер для 16-bit Unicode-символов. Все строковые литералы в Java
"abc") являются объектами класса String.
Определение: String str;
Создание: str = new String(); str = new String("hi"); str = "hi"; str = "hi" + " there";

Слайд 7

java.lang.String (продолжение)

Некоторые методы String:
• int length()
• boolean equals(String)
• boolean startsWith(String)
• String toUpperCase()

java.lang.String (продолжение) Некоторые методы String: • int length() • boolean equals(String) •
String toLowerCase()
• int indexOf(String)
• String subString(int)

Слайд 8

Wrapper Classes

• Boolean • Character • Number
• Byte • Short • Integer
• Long • Double •

Wrapper Classes • Boolean • Character • Number • Byte • Short
Float
Используются там, где нужны объекты. Содержат "полезные" поля и методы. Например:
• MAX_VALUE, MIN_VALUE
• SIZE
• byte byteValue(), int intValue(), ...
• int parseInt(String), long parseLong(String)
...

Слайд 9

String и Wrapper classes. Особенности

• Перегруженные операции
• Передача в метод по значению

String и Wrapper classes. Особенности • Перегруженные операции • Передача в метод
public static void summ(Integer i) {
i = i + new Integer(2);
}
public static void main(String[] args) {
Integer i1 = 10;
summ(i1);
int i2 = 10;
summ(i2);
System.out.println("i1="+i1+";i2="+i2);
}

Слайд 10

java.lang.Math

Статические методы для операций над числами.
• int abs(int), long abs(long), ...
• double

java.lang.Math Статические методы для операций над числами. • int abs(int), long abs(long),
cos(double), double acos(double), ...
• double exp(double), double log(double), ...
• int max(int, int), long min(long, long), ...
• double pow(double, double)
• double random()
...

Слайд 11

java.lang.System

Содержит "полезные" поля и методы. Конструктор недоступен. Все поля и методы статические.
Класс

java.lang.System Содержит "полезные" поля и методы. Конструктор недоступен. Все поля и методы
предоставляет доступ к потокам in, out, err, методы доступа к properties и другие.
System.out.println("Hello World!");
System.currentTimeMillis();
System.exit(1);
System.getProperty("path.separator");
...

Слайд 12

java.lang.Runtime

Позволяет получить доступ к "окружению" и запускать независимые процессы.
Process process =

java.lang.Runtime Позволяет получить доступ к "окружению" и запускать независимые процессы. Process process
runtime.exec(...);
Во время выполнения в JVM есть только один экземпляр Runtime. Конструктор этого класса недоступен, но (в отличии от System) здесь нестатические методы.
Как можно получить доступ к ним?

Слайд 13

java.lang.Runtime (продолжение)

Объект Runtime получают с помощью “static” метода getRuntime().
* Это паттерн

java.lang.Runtime (продолжение) Объект Runtime получают с помощью “static” метода getRuntime(). * Это
Синглтон о котором ещё будет отдельный разговор.
try {
Runtime.getRuntime().exec("notepad.exe");
} catch(IOException e) {
e.printStackTrace();
}
Что такое try/catch?

Слайд 14

Exceptions: try catch final

Exception handling - способ обработки "исключительных" ситуаций во время

Exceptions: try catch final Exception handling - способ обработки "исключительных" ситуаций во
выполнения программы.
try {
doSomething(); // code that may throw exception/error
} catch(AnyThrowable1 e) {
... // exception handler 1
} catch(AnyThrowable2 | AnyThrowable3 e) {
... // exception handler 2 and 3
} finally {
... // clean-up code
}

Слайд 15

Throwable, Exception, Error

RuntimeException - наследник Exception, зарезервированный для исключений связанных с некорректным

Throwable, Exception, Error RuntimeException - наследник Exception, зарезервированный для исключений связанных с
использованием "стандартных" API.
Исключения, которые не являются наследниками RuntimeException, должны "отлавливаться".

Слайд 16

Exceptions: throw throws

public class ThrowDemo {
static void demo1() {
throw

Exceptions: throw throws public class ThrowDemo { static void demo1() { throw
new NullPointerException(); // RuntimeExceptions- OK
}
static void demo2() {
throw new IOException(); // compile error
// IOException must be caught or declared to be thrown
}
static void demo3() throws IOException {
throw new IOException();
// IOException is declared to be thrown - OK
}
}
Имя файла: java.-lang-(Java-Language)-Package.pptx
Количество просмотров: 414
Количество скачиваний: 1