• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Лекция 6
 

Лекция 6

on

  • 878 views

 

Statistics

Views

Total Views
878
Views on SlideShare
550
Embed Views
328

Actions

Likes
0
Downloads
6
Comments
0

2 Embeds 328

http://itc73.ru 327
http://rfdaily.ru 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Лекция 6 Лекция 6 Presentation Transcript

    • Вводный курс в Java Занятие 6Александр Русинe-mail: alexander.rusin@simbirsoft.comAndroid DeveloperООО СимбирСофт
    • Mаth Во-первых, идеальное представление вещественных чисел является бесконечным, в то время как представление в Java ограничено числом бит. Во вторых использовании двоичного, а не десятичного представления чисел  Дроби как, например, 1/5 и 7/50, которые точно представимы в десятичной нотации (0.2 и 0.14 соответственно) оказываются периодическими в двоичном коде. Эта проблема аналогична трудностям в представлении периодических дробей, например 1/3 в десятичном коде (0.3333333...).
    • Логарифмы по основанию 10Значением логарифма является число, в степень которого должно быть возведено основание, чтобы получить заданный результат. public class Logarithms { public static void main(String[] args) { for (int i = 1; i <= 100; i++) { System.out.println(i + "t" + Math.log10(i) + "t" + Math.log(i)+ "t" + lg(i)); } } public static double lg(double x) { return Math.log(x) / Math.log(2.0); } }
    • Кубические корниpublic class CubeRoots { public static void main(String[] args) { for (int i = -5; i <= 5; i++) { System.out.println(Math.cbrt(i)); } }}
    • Список функций public static int abs(int a) public static long abs(long a) public static int max(int a, int b) public static long max(long a, long b) public static int min(int a, int b) public static long min(long a, long b) Список всех функций можно найти  http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Math.html
    • Логирование Зачем нужно логирование? Log4j  Наиболее известная библиотека для логирования сообщений. Она позволяет написать в java коде вызовы библиотеки и далее гибко настраивать, не изменяя уже написанный код.
    • Примерimport org.apache.log4j.Logger;public class LogApp {/** * Hello world! */ public final static Logger LOG =Logger.getLogger(LogApp.class); public static void main(String[] args) { LOG.info("Hello World!"); }}
    • Логеры Экземпляры класса org.apache.log4j.Logger, вызывая методы которых в подсистему log4j посылается сообщение для логгинга. Приоритет  FATAL - произошла фатальная ошибка - у этого сообщения наивысший приоритет  ERROR - в программе произошла ошибка  WARN - предупреждение в программе что-то не так  INFO - информация. К сведению трудящися.  DEBUG - детальная информация для отладки  TRACE - наиболее полная информация. трассировка выполнения программы. Наиболее низкий приоритет.
    • Аппендеры Объект который определяет что нужно делать с логируемыми сообщениями. Описываются в файле настроек (log4j.xml)чтобы вывод логов в процессе эксплуатации приложения можно было легко менять.
    • Стандартные аппендеры. org.apache.log4j.ConsoleAppender - наиболее часто используемый во время разработки аппендер. Выводит сообщения на консоль. org.apache.log4j.FileAppender - просто записывает логируемые сообщения в файл. org.apache.log4j.DailyRollingFileAppender - тоже записывает сообщения в файл но каждый день создаёт новый файл с таким же именем. org.apache.log4j.net.SMTPAppender - посылает сообщения по электронной почте.
    • Util Классы даты и времени  java.util.Calendar,  java.util.Date,  java.util.TimeZone.
    • Calendar Абстрактный класс для работы с датами и временем. Содержит большое количество констант для дней недели и месяцев.  protected Calendar()  public static Calendar getInstance()  public static Calendar getInstance(TimeZone zone) Создает экземпляр, настроенный на текущий часовой пояс и локализацию дат.
    • Calendar  public final Date getTime()  public final void setTime(Date date)  protected long getTimeInMillis()  protected void setTimeInMillis(long millis) Чтение и установка времени.  public final int get(int field)  public final void set(int field, int value) Чтение и установка конкретного поля даты.  public void setTimeZone(TimeZone value) Установка заданного часового пояса.
    • Date Класс, представляющий дату и время.  public Date()  public Date(long date) Устанавливает текущее значение времени или заданное в миллисекундах от полночи 1 января 1970 года.  public long getTime()  public void setTime(long time) Чтение и установка значений времени.
    • Random Генератор псевдослучайных последовательностей.  public Random()  public Random(long seed) Два экземпляра этого класса, инициализированные одинаковыми значениями возвратят одинаковые последовательности. По умолчанию инициализируется текущим временем в миллисекундах.  public void setSeed(long seed) Инициализировать последовательность.
    • Random  protected int next(int bits) Следующее псевдослучайное число. Задается число младших бит, значение которых будет вычислено.  public int nextInt() Аналог next(32).  public long nextLong() Возвращает псевдослучайное значение типа long, составленное из двух 32-разрядных значений.
    • Выпускное заданиеРеализовать приложение, котороемаксимально повторяет функциональностьстандартного калькулятора Android.
    • Литература http://docs.oracle.com/javase/1.5.0/docs/api/ http://www.log4j.ru/
    • Спасибо за внимание!