黑马程序员技术交流社区
标题:
对抽象类的一些理解
[打印本页]
作者:
余银桂
时间:
2012-6-14 13:04
标题:
对抽象类的一些理解
// 描述动物这个类
abstract class Animal
{
public String color;
public abstract void run();
public Animal(){
color = "red";
}
}
// 描述狗的子类
class Dog extends Animal
{
public void run(){
System.out.println( super.color + "跑..........");
}
}
// 描述鸟的子类
class Bird extends Animal
{
public void run(){
System.out.println("飞..........");
}
}
// 描述鱼类
class Fish extends Animal
{
public void run(){
System.out.println("游..........");
}
}
class Demo1
{
public static void main(String[] args)
{
new Dog().run();
new Bird().run();
new Fish().run();
System.out.println( i );
}
}
复制代码
抽象类:
当一个类在描述的时候,如果不懂得功能函数应该如何定义,那么该类就应该描述为抽象类,而该功能函数应该描述为抽象函数。
抽象类的实现方式:
abstract 抽象的
可以描述函数(抽象函数)和类(抽象类)。
抽象函数不能有{}。
抽象类的特点:
1. 有抽象函数的类,该类一定是抽象类。
2. 抽象类中不一定要有抽象函数。
3. 抽象类不能使用new关键字创建对象。
4. 抽象类的作用主要为了提高代码的复用性,让子类来继承使用的。
5. 编译器强制子类实现抽象类父类的未实现的抽象方法。 可以不实现,前提是子类的也要声明为抽象的。
抽象类的优点:
1. 提高代码复用性
2. 强制子类实现父类中没有实现的功能
3. 提高代码的扩展性、便于后期的代码维护
编程习惯:
1. 描述普通的类(一般根据现实生活中的名词 )
2. 1中描述的类当中相互之间的有没有关系
is a
has a
3. 1中描述的类和类之间有没有重复的代码
如果有描述新的类,并发生新的关系
4. 如果新类描述中有的方法不知具体的实现,可以描述为抽象方法,
包含抽象方法的类一定是抽象类。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2