接口、抽象类、抽象方法实现继承相关关系

1、定义一个接口
/**
 *
 */
package com.wjj;

/**
 * @author jiajunWu
 *
 */
public interface MyInterface {
 
 public static int id=0;
 
 public void myInterTest();
 
 public void myInterTest2();

 abstract void doJob2(ServletContext context);
 
}
2、定义一个抽象类(里面包涵抽象方法,和自己的成员变量,并实现上面的接口)
package com.wjj;

public abstract class MyAbstractClass implements MyInterface {

 public  int id;
 private String name;

 public MyAbstractClass(int id, String name) {
  super();
  this.id = id;
  this.name = name;
 }

 public MyAbstractClass() {
  super();
 }

 public void myAbstractTest1() {
  System.out.println("抽象类的方法1");
 }
 
 //重写接口的抽象方法
 public void doJob2(ServletContext context) {
  // TODO Auto-generated method stub

 }

 public abstract void myAbstractTest2();
}
3.通过继承上面的类
/**
 *
 */
package com.wjj;

/**
 * @author jiajunWu
 *
 */
public class MyInterAbstractTest extends MyAbstractClass{

 @Override
 public void myAbstractTest2() {
  // TODO Auto-generated method stub
  
 }

 @Override
 public void myInterTest() {
  // TODO Auto-generated method stub
  
 }

 @Override
 public void myInterTest2() {
  // TODO Auto-generated method stub
  
 }
}
总结:说明一个抽象类实现一个接口,不需要将接口的方法都实现,但是如果这个实现接口的抽象类,它的派生类就会实现它其中抽象的方法和接口的所有方法,派生类不能重写基类的默认构造函数和带参数的构造函数。

 

你可能感兴趣的:(抽象类)