标签:编辑 领域 strong code out ddr 基础学习 java基础学习 pre
一、抽象类的概念和定义
在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。
抽象类的格式:修饰符 abstract class 类名
public abstract class Person { String name="";//即然是人肯定是要有名字的。 int age=0;//年龄 Person(String name,int age){ this.name=name; this.age=age; } abstract void Study(); }
注意了:上面红色的就是抽象方法。有人会问了,这个方法怎么没有方法体。
抽象方法:在类中没有方法体的方法,就是抽象方法。
抽象类中的抽象方法必须被实现!
如果一个子类没有实现父类中的抽象方法,则子类也成为了一个抽象类!
抽象类中的普通方法,可以不必实现。
在上面的抽象类中我们定义一个抽象方法 学习
下面我们定义学生这个主体类。学生类中我们多一个地址的定义。
public class Student extends Person { String address="";//多增加一个属性地址 Student(String name,int age,String address){ super(name,age);//调用超类的构造方法 this.address=address; } @Override void Study(){//实现的抽象方法 System.out.print("学生"+name+" 要去"+address+"学习Java"); } }
下面我们写一个测试类,测试一下:
public class Test { public static void main(String[] args) { Person perA=new Student("王小明",38,"上海"); perA.Study(); } }
运行后的结果: 学生王小明去上海学习java
标签:编辑 领域 strong code out ddr 基础学习 java基础学习 pre
原文地址:http://www.cnblogs.com/doubiwan/p/7301015.html