java抽象类学习
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java抽象类学习,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1731字,纯文字阅读大概需要3分钟。
内容图文
![java抽象类学习](/upload/InfoBanner/zyjiaocheng/1114/80e95d7677924b16b19ffb13effecb8e.jpg)
帮助文档 <=> API文档 <=> 程序说明文档
姓名,年龄,工号
雇员类
普通员工类
经理类
abstract:抽象,即不具体,只能修饰类和方法,不能修饰变量等。
抽象方法:被abstract关键字修饰的方法,只有函数声明,没有函数体。
抽象类:被abstarct修饰的类。
形式上看,就是含有抽象方法的类,当然也可以一个抽象方法也没有,也可以将类修饰成抽象类,这样相当于禁止
该类创建类对象。
意义上看,抽象类是指,对抽象类所描述的事物在分析时,发现有一部分功能的功能内容是不确定的,但功能一定
存在。所以就将该部分功能定义成抽象方法,没有函数体,只有函数声明。
注意:抽象类不能用new创建对象。但可以声明该抽象类的引用变量。
抽象类被子类覆盖后,若子类想使用抽象类中的功能,则必须先覆写(覆盖)所有抽象方法,只有所有抽象方法都被覆盖
(覆写),才能够创建子类对象,来调用其中的方法,如果子类只覆盖(覆写)了一部分抽象方法,则子类也是一个抽象类
(即子类必须定义成一个抽象类,因为子类继承了父类,并且没有覆盖(覆写)所有的抽想方法,相当于子类中也存在一些
抽象的方法,所以子类必须定义成一个抽象类),若子类没有定义成抽象类,且没有覆盖(覆写)父类中的所有的抽象方法
,则编译会报错。
抽象类和一般类没有什么太大的区别,只有两点不同
1,抽象类中存在一些没有函数体,只有函数声明的方法。
2,抽象类不能创建实例,因为创建类对象后,引用没有函数体的方法没有意义。
抽象类和其他父类没有区别都是从子类上抽取而来,只不过,多个子类中的功能定义相同,功能内容不同,所以父类中没有
必要有方法体,就出现了抽象函数。抽象类虽不能创建对象,但是可以有构造方法和成员变量,成员函数,构造代码块,静态
代码块。和普通的父类没有什么区别,也可是使用多态技术,也可以使用super关键字进行访问。也存在覆盖(覆写)。也可
以直接拿过来用,继承了父类(抽象类)的方法,直接调用即可。
抽象类中的抽象方法,即被abstract修饰的方法,相当于强迫子类必须覆盖(覆写)该方法,否则就不能创建该子类对象。
final修饰方法刚好相反,是强制禁止覆盖(覆写)某一个方法。
*/
abstract class Employee
{
private String name;
private int age;
private String id;
Employee(String name,int age,String id)
{
this.name = name;
this.age = age;
this.id = id;
}
public String getName()
{
return name;
}
public abstract void work();
}
class Manager extends Employee
{
private int bonus;
Manager(String name ,int age,String id,int bonus)
{
super(name,age,id);
this.bonus = bonus;
}
public void work()
{
System.out.println("Manager work");
}
}
class Pro extends Employee
{
Pro(String name,int age,String id)
{
super(name,age,id);
}
public void work()
{
System.out.println("Pro work");
}
}
abstract class Ceo extends Employee
{
Ceo(String name ,int age ,String id)
{
super(name,age,id);
}
public void work()
{
System.out.println("Ceo work");
}
}
原文:http://www.cnblogs.com/wllbelief-win/p/4354019.html
内容总结
以上是互联网集市为您收集整理的java抽象类学习全部内容,希望文章能够帮你解决java抽象类学习所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。