抽象类:
1、抽象类只能作为基类,只能被继承,只能是单继承,用extends,不能实例化。不能用final修饰。
2、抽象类中可以包含抽象成员,也可不包含抽象成员。但必须包含有抽象方法,可以包含非抽象方法。
3、派生类必须重写抽象类中的抽象方法。
abstract class A
{
public abstract void say();
public void eat()
{
System.out.println("eat food");
}
}
class B extends A
{
public void say() {
// TODO Auto-generated method stub
System.out.println("hello");
}
}
abstract class C extends A
{
public abstract void run();
}
接口interface
1、接口中,所有方法都是抽象的,而且是public,成员变量只能是static final。
2、接口只能用来继承,可以多继承,用implements。如果是接口继承接口用extends。
interface Runner //定义接口
{
int i=3;
public void start();
void run();
}
interface Eater extends Runner //接口间可以继承
{
public final static int j=4;
void eat();
}
class TT implements Eater //引用接口
{
public void start()
{
System.out.println("---------start()-------");
}
public void run()
{
System.out.println("---------run()-------");
}
public void eat()
{
System.out.println("---------eat()-------");
}
}