Java_Abstract_vs_Interface_Summary
Java_Abstract_vs_Interface_Summary
=========================================================
Example:
abstract class Animal {
String name;
Animal(String name) {
this.name = name;
}
abstract void sound();
void eat() {
System.out.println("Eating...");
}
}
Example:
abstract class Animal {
Animal() {
System.out.println("Animal constructor");
}
}
class Dog extends Animal {
Dog() {
System.out.println("Dog constructor");
}
}
Example:
Animal a = new Animal() {
void sound() {
System.out.println("Bark from anonymous class");
}
};
7. Fields in Interface
----------------------
- Allowed but treated as:
- public
- static
- final
Example:
interface Config {
int TIMEOUT = 5000; // implicit public static final
}
class C implements A, B {
public void show() {
A.super.show(); // or B.super.show()
}
}