- 1.抽象类---abstract
public class demo_2 {
anmial an =new anmial();//会报错 抽象方法不能实例会
Cat cat=new Cat();
}
abstract class anmial{
String name;
int age;
//动物会叫,不知道会怎样去叫 ---必须要抽象
//抽象方法在抽象类中 抽象类同样继承
abstract public void cry();
}
//当一个类继承父类是抽象类,子类必须实现其中所有的抽象方法
class Cat extends anmial{
public void cry()
{
//实现;不会报错
}
}
- 2. 接口----实现多继承和多态
class 类名 implement interface
{
}
1). 实现接口的话,必须实现接口中所有的方法4).一个接口不能继承其他类 可以继承其他接口;但是实现接口时候除了实现本接口中方法,还要实现继承的接口中方法
/**
*
*/
package ExtendsDemo;
/**
* @author
*
*/
public interface USB extends kkk {
int a=0;//static 类型且 final
public void start();
public void stop();
}
interface kkk{
public void fry();
}
//一个类实现多个接口
class Camera implements USB,kkk
{
//当一个类实现某个接口,必须该类实现接口所有方法
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("我是相机 开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("我是相机 停止工作");
}
@Override
public void fry() {
// TODO Auto-generated method stub
}
}
class Phone implements USB
{
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("我是phone 开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("我是phone 停止工作");
}
@Override
public void fry() {
// TODO Auto-generated method stub
}
}
class Computer{
public void USeUsb( USB usb)
{//多态,电脑自己识别调用不同实例
usb.start();
usb.stop();
}
}
两者区别: