Java 2013-02-08
Материал из SEWiki
Краткое содержание
На лекции было рассказано следующее:
- Программа "Привет, Мир"
- Необходимые средства для запуска программы на Java (JDK, JRE)
- Версии Java (ME, SE, EE).
- Развитие языка Java (1.0 -> 1.7)
- Как происходит запуск приложения написанного на Java
- CLASSPATH
- Кодовые соглашения
- if, for, foreach
- Работа с массивами и строками (базовый уровень)
- Наследование
- Хранение информации в памяти виртуальной машины (базовый-базовый уровень)
- Работа с исключениями (базовый уровень)
- Пакеты (базовый уровень)
Примеры с лекции
1. Привет, Мир!
//HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
2. Привет, Человек!
//HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
if (args.length > 0) {
System.out.println("Hello World, " + args[0] + "!");
} else {
System.out.println("Error");
}
}
}
3. Привет, люди!
//HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("Hello World, " + args[i] + "!");
}
}
}
4. Привет, люди-2!
//HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
for (String str : args) {
System.out.println("Hello World, " + str + "!");
}
}
}
5. Исключения
//ExceptionTest.java
class MyException extends Exception {
public MyException(String msg) {
super(msg);
}
}
public class ExeptionTest {
public void foo() throws MyException {
System.out.println("Testing exceptions...");
throw new MyException("Kernel panic!!!");
}
public static void main(String[] args) {
try {
ExeptionTest t = new ExeptionTest();
t.foo();
} catch (MyException e) {
e.printStackTrace(System.err);
}
}
}
6. Калькулятор
//Parser.java
package ru.spbau.kuznetsov.test01.parser;
public class Parser {
public int parse (String str) {
int result = 0;
for (int i = 0; i < str.length(); i++) {
result = result*10 + str.charAt(i)-'0';
}
return result;
}
}
//AdvancedParser.java
package ru.spbau.kuznetsov.test01.parser;
public class AdvancedParser extends Parser {
private int num;
public AdvancedParser (int num) {
this.num = num;
}
public int parse (String str) {
int result = super.parse(str);
return result*num;
}
}
//ParserTest.java
package ru.spbau.kuznetsov.test01;
//import ru.spbau.kuznetsov.test01.parser.*;
import ru.spbau.kuznetsov.test01.parser.Parser;
import ru.spbau.kuznetsov.test01.parser.AdvancedParser;
public class ParserTest {
public static void main(String[] args) {
//ru.spbau.kuznetsov.test01.parser.Parser p = new ru.spbau.kuznetsov.test01.parser.AdvancedParser(3);
Parser p = new AdvancedParser(3);
for (int i = 0; i < args.length; i++) {
//System.out.println(p.parse(args[i])+1);
System.out.printf("%d\n", p.parse(args[i])+1);
}
}
}