日期:2014-05-20  浏览次数:20693 次

抽象方法与抽象类
我是一名初学者,谁能具体解释下:java中抽象方法,抽象类的含义,用法。谢谢!

------解决方案--------------------
主要目的就是自己不去实现,子类通过继承自己去实现此方法
------解决方案--------------------
抽象方法就是定义一个方法的规则。
有抽象方法的类必须定义为抽象类。
------解决方案--------------------
1、抽象方法就是类对这个方法只定义不实现,让子类来实现
2、带有抽象方法的类一定是抽象类,但是抽象类里面可以没有

为什么要用抽象方法?可以联系实际,比如说有个动物类,里面一个方法是“叫”,但是每种动物的叫法是不一样的,所以在类里面实现是没有意义的,应该留给继承它的子类,比如说狗,它继承之后要实现“叫”这个方法,猫继承之后也实现自己的叫法

既然没有必要实现,那为什么还要在父类里面定义抽象方法?这就主要是为了实现多态
------解决方案--------------------
举个例子,图形是个抽象的概念,可以包括三角形,正方形之类之类的,你想要求某图形的面积,就可以定义一个抽象类
public abstract class Graphics{
public abstract int getArea();
}

这就是一个抽象类和抽象类里的抽象方法,然后自己再定义一个三角形的类继承Graphics,同时[color=#FF0000]必须[/color]实现它里面的抽象方法,填上你自己的实现,比如:
public class Triangle{
public int getArea(){
//。。。。。自己写,底乘高除2,如果是正方形就写长乘以宽;
}
}

总的来说,抽象就是为了定一系列规则,然后给别人去按照这个规则去实现,明白没?
------解决方案--------------------
public abstract class 猫{ 
public abstract 抓老鼠(); 
}

public class 花猫{ 
public 抓老鼠(){抓到,然后又放走了}
}

public class 白猫{ 
public 抓老鼠(){喜欢用一只爪子抓}
}

public class 招财猫{ 
public 抓老鼠(){还抓老鼠,out了} 
}