/**
- 抽象类
- 在Java中可以创建一中类专门来当做父类,这种类被称为"抽象类"
- 抽象类其实也是一个类,只是和普通类相比,其中多了抽象方法
- 抽象方法是只声明而未实现的方法 ,所有的抽象方法必须使用abstract关键字声明
- 包含抽象方法的类也必须使用 abstract class 声明
- 抽象类不能被直接实例化,也就是不能只能用new 关键字去产生对象
- 抽象方法只需要声明 不需要实现
- 抽象类的子类必须覆写所有的抽象方法才能被实例化,否则这个子类还是个抽象类
- @author bo bo
*/
abstract class TestAb{
//定义抽象类
String name;
int age;
String occupation;
//声明抽象方法()
public abstract String talk() ;
//抽象类定义了默认的无参构造函数 子类默认调用父类的构造函数
//若是没有重写默认的构造无参函数,则必须在子类明确调用父类的有参构造函数
// public TestAb () {
// }
public TestAb (String name) {
}
}
class StudentTest extends TestAb
{
public StudentTest (String name,int age,String occupation) {
super("李四");
this.name = name;
this.age = age;
this.occupation = occupation;
}
//子类必须重写父类的抽象方法
public String talk() {
return "我的姓名:"+this.name +"年龄:"+this.age +" 职业:"+this.occupation;
}
}
public class Abstract {
public static void main(String[]args) {
StudentTest pS = new StudentTest("张三", 24, "学生");
System.out.println(pS.talk());
}
}
网友评论