抽象类学习
2014-04-15 09:08
423 查看
1.抽象类无法实例化
abstract class Person
{
public Person(String n)
{
name=n;
}
abstract String getDcription();
public String getName()
{
return name;
}
private String name;
}
public class Demo
{
public static void main(String[]args)
{
Person p=new Person();//这里会报错
}
}
2.抽象类中的方法可以是实现了方法体,也可以是抽象的方法
3.一个类如果继承了抽象类就必须实现它的所有抽象方法,否则这个类也是抽象的。
abstract class Man extends Person
{
public Man(String n) {
super(n);
this.gender="male";
}
public String getGender()
{
return gender;
}
private String gender;
}
(这里要实现抽象类Person中的抽象方法getDcription)
4.上面这段代码会报错,为什么?把错误贴出来:Implicit super constructor Man() is undefined for default constructor. Must define an explicit constructor。意思是指Man的父类中没有默认的构造函数,因此类Man必须显式地定义一个构造函数。或者可以往Person类中添加一个无参数的构造函数。
abstract class Person
{
public Person(String n)
{
name=n;
}
abstract String getDcription();
public String getName()
{
return name;
}
private String name;
}
public class Demo
{
public static void main(String[]args)
{
Person p=new Person();//这里会报错
}
}
2.抽象类中的方法可以是实现了方法体,也可以是抽象的方法
3.一个类如果继承了抽象类就必须实现它的所有抽象方法,否则这个类也是抽象的。
abstract class Man extends Person
{
public Man(String n) {
super(n);
this.gender="male";
}
public String getGender()
{
return gender;
}
private String gender;
}
(这里要实现抽象类Person中的抽象方法getDcription)
4.上面这段代码会报错,为什么?把错误贴出来:Implicit super constructor Man() is undefined for default constructor. Must define an explicit constructor。意思是指Man的父类中没有默认的构造函数,因此类Man必须显式地定义一个构造函数。或者可以往Person类中添加一个无参数的构造函数。
相关文章推荐
- 每个程序员都必须遵守的编程原则
- Win8.1设备管理器在哪怎么打开?
- CButton按钮和左上角图标添加图片(Bitmap,Icon),一般用于初始化中
- 如何整合Office Web Apps至自己开发的系统(二)
- JS弹出遮罩层
- 文献标识码、文献载体类型标识
- linux课程-进程管理与系统监视
- 把新项目上传到svn
- 第八周 项目1.2 用友元函数实现复数类中的运算符重载
- ueditor 编辑器的配置 实现了上传图片与文件功能---附效果图
- ReportStudio入门教程(二十三) - 提示页
- 第八周 项目一 实现复数类中的运算符重载(1)
- 如何整合Office Web Apps至自己开发的系统(一)
- 小波分析 C++库
- textarea自动增长宽高
- 转: 模块化开发框架seajs简介
- Python爬虫初学(4)
- 简单工厂模式
- 八项目1
- PHP依赖注入简单理解