Классы и объекты
Декларация классов Обычный класс class MyClass { // field, constructor, and // method declarations } Класс наследованный class MyClass extends MySuperClass implements YourInterface { // field, constructor, and // method declarations }
Определение методов Объявление public double calculateAnswer(double wingSpan, int numberOfEngines, double length, double grossTons) { //do the calculation here } Именование методов run runFast getBackground getFinalData compareTo setX isEmpty Переопределение методов public class DataArtist {... public void draw(String s) {... } public void draw(int i) {... } }
Объекты Создание Point originOne = new Point(23, 94); Rectangle rectOne = new Rectangle(originOne, 100, 200); Rectangle rectTwo = new Rectangle(50, 100); Использование objectReference.methodName(argumentList);
Возможности класса Возвращение значения с методов Использование this Метод класса и объекта Инициализация полей (конструктор, блок,статик блоки)
Модификаторы полей ModifierClassPackageSubclassWorld publicYYYY protectedYYYN no modifierYYNN privateYNNN Access Levels Visibility ModifierAlphaBetaAlphasubGamma publicYYYY protectedYYYN no modifierYYNN privateYNNN
Вложенные классы Вложенный класс class OuterClass {... class NestedClass {... } } Статический вложенные класс class OuterClass {... static class StaticNestedClass {... } class InnerClass {... } }
Локальные классы public static void validatePhoneNumber( String phoneNumber1, String phoneNumber2) {... class PhoneNumber {... PhoneNumber(String phoneNumber) {... } public String getNumber() { return formattedPhoneNumber; }... }... }
Анонимные классы Синтаксис объявления HelloWorld frenchGreeting = new HelloWorld() { String name = "tout le monde"; public void greet() { greetSomeone("tout le monde"); } public void greetSomeone(String someone) { name = someone; System.out.println("Salut " + name); } };
Enum public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
Q&A