java什么是抽象类 什么是抽象方法有什么特点,java什么是抽象类,如何定义抽象类
如何解决写爬虫IP受阻的问题?立即使用。
一、什么是抽象类
由抽象修改的方法称为抽象方法;用abstract修饰的类称为抽象类。抽象类不能实例化,因为它不是具体类,或者这样的类不够完善,不能直接用new关键字调用它的构造函数生成这个类的对象。我们可以使用abstract来定义抽象类和抽象方法。示例代码如下:
抽象类的类名
{
抽象int方法名(int x,int y);
}抽象方法没有方法体。注意,抽象类中既可以有抽象方法,也可以有普通方法。注意,抽象方法没有方法体(也就是说,方法后面没有花括号)。任何继承这个抽象类的实体子类都必须实现这个抽象方法。
我们来总结一下抽象类的特点:
(1)抽象类不能实例化;
(2)构造方法和静态方法不能抽象;
(3)父类的抽象方法往往在子类中实现;
(4)抽象类可以有一个指向子类对象的对象引用。
二、抽象类的例子
让我们先来看看要完成的实际例子:
1.定义抽象员工;
(a)受保护的字段:姓名、性别、年龄和其他基本属性。
(b)定义抽象方法函数getsalary()来表示领工资操作。
(c)定义通用函数whoami()输出:我是名字
(d)带有(姓名,性别)参数的构造函数。
定义从employees派生的Manager类Manager;
(一)除了员工等基本属性,还有岗位级格力的私人属性。
(b)经理领取工资7000元,打印输出工资。
(c)重写父类的whoami(),调用父类的whoami()方法,然后输出:我是管理者。
定义一个会计类Accounting,它是从employee类派生出来的;
(一)除了从业人员等基本属性外,还有会计等级评级的私人属性。
(b)会计领取工资3000元,打印输出工资。
(c)重写父类的whoami(),调用父类的whoami()方法,然后输出:我是会计。
/**
*定义员工类别、
*/
公共抽象类雇员{
受保护的字符串名称;
受保护的布尔性别;
受保护的年龄;
公共雇员(字符串名称,布尔性别){
this.name=name
this.gender=性别;
}
/**
*表示工资的操作。
*/
公共抽象void getsalary();
public void whoami(){
System.out.println(我是名称);
}
}我们创建一个新的管理器类Manager,它继承了Employee类。这时,Eclipse提示我们必须重写抽象方法getsalary。示例代码如下:
/**
*经理级
*/
公共类管理器扩展员工{
私串格力;
公共管理器(字符串名称,布尔性别){
超级(姓名、性别);
}
//重写父类的抽象方法
public void getsalary(){
System.out.println(经理拿7000元工资);
}
public void whoami(){
super . whoami();//显示调用父类的方法
System.out.println(我是经理);
}
}接下来是会计课。类似于上面的manager类。
/**
*会计
*/
公共类会计扩展员工{
私有int评级;
公共会计(字符串名称,布尔性别){
超级(姓名、性别);
}
@覆盖
public void getsalary() {
System.out.println(会计发3000工资);
}
public void whoami() {
super . whoami();//显示调用父类的方法
System.out.println(我是会计);
}
}我们,大量免费的入门Java教程,欢迎在线学习!这就是java的抽象类的细节。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。