抽象类的作用
请教一下.
抽象类到底什么时候用.有什么用?
abstract class fun1{
abstract void method1();
abstract void method2();
…
}
class fun2 extends fun1{
public void method1(){
........
}
}
抽象类只不过是不能NEW而已...但继承后的子类要把抽象类中的方法重写
class fun3{
public void method1(){
........
}
}
那和我直接写个普通的类然后去写这么个方法...有什么区别吗
麻烦了...
------解决方案--------------------
interface IXXX{
void handler();
}
abstract AXXX implements IXXX{
void handler(){
doAHandler();
}
abstract void doHandler();
}
class AIXXX extends AXXX{
void doAHandler(){
//doSomeThing
}
}
abstract BXXX implements IXXX{
void handler(){
doBHandler();
}
abstract void doHandler();
}
class AIXXX extends AXXX{
void doBHandler(){
//doSomeThing
}
}
------解决方案--------------------
abstract class Person{
abstract void method1();
abstract void method2();
}
class Student extends Person{
public void method1(){
System.out.println("student");
}
}
class Teacher extends Person{
public void method1(){
System.out.println("teacher");
}
}
public class Test{
public static void main(String args[]){
Person p1= new Student();
Person p2= new Teacher();
doMethod(p1);
doMethod(p2);
}
void method doMethod(Person person){//多态的好处不要写多个方法
person.method1;
}
}