JavaSe基础(15)-- abstact
来源:互联网 发布:mac pro快捷键 编辑:程序博客网 时间:2024/05/01 13:37
abstract (抽象)
- abstract是java的关键字之一,可以用来修饰方法、类
- abstract修饰的方法称为抽象方法
- abstract修饰的类称为抽象类
抽象方法
- 只有方法声明,没有方法体的方法叫做抽象方法
格式
[修饰符] abstract 返回值数据类型 方法名称([参数]) ;
注意:
必须以分号结尾, 只能定义在抽象类中
抽象类
- 所有的对象都是通过类来描绘的,但并不是所有的类都能描绘出具体的对象
- 如果一个类没有足够的信息描绘出对象,那么这个类就叫做抽象类
格式
[修饰符] abstract class 类名{ }
注意:
抽象类不可以实例化,需要继承后使用
继承抽象类,需要实现所有的抽象方法
抽象类中的抽象方法不能为private示例:
雇员示例:需求:公司中程序员有姓名,工号,薪水,工作内容。项目经理除了有姓名,工号,薪水,还有奖金,工作内容。对给出需求进行数据建模。分析:在这个问题领域中,先找出涉及的对象。通过名词提炼法。程序员: 属性:姓名,工号,薪水、 行为:工作。经理: 属性:姓名,工号,薪水,奖金。 行为:工作。程序员和经理不存在着直接继承关系,但是程序员和经理却具有共性内容。可以进行抽取。因为他们都是公司的雇员 可以将程序员和经理进行抽取.建立体系.//描述雇员。abstract class Employee{ private String name; private String id; private double pay; Employee(String name,String id,double pay) { this.name = name; this.id = id; this.pay = pay; } public abstract void work();}//描述程序员。class Programmer extends Employee{ Programmer(String name,String id,double pay) { super(name,id,pay); } public void work() { System.out.println("code..."); }}//描述经理。 class Manager extends Employee{ private int bonus; Manager(String name,String id,double pay,int bonus) { super(name,id,pay); this.bonus = bonus; } public void work() { System.out.println("manage"); }}
1、抽象类与抽象方法的关系
- 包含抽象方法的类一定为抽象类
- 抽象类不一定包含抽象方法
2、普通方法与抽象方法的区别
3、抽象类与普通类的区别
0 0
- JavaSe基础(15)-- abstact
- JavaSE基础(一)
- JavaSE基础(二)
- JavaSE基础(三)
- JavaSE基础(四)
- JavaSE基础(五)
- JavaSE基础(六)
- JAVASE基础(一)
- JAVASE基础(二)
- JAVASE基础(三)
- JAVASE基础(四)
- JAVASE基础(七)
- JAVASE基础(八)
- JAVASE基础(九)
- JAVASE基础(十)
- JAVASE基础(十一)
- JAVASE基础(十二)
- JAVASE基础(十五)
- GCD 定时器
- 小觅机器人sDeno亮相Nvidia发布会 发力人工智能
- maximum-depth-of-binary-tree
- lightoj 1170 - Counting Perfect BST 数学+DP
- android 打包报错 conversion to dalvik format failed with error 1
- JavaSe基础(15)-- abstact
- 图片转bitmap
- java 网络编程
- 常用html知识汇总
- 如何处理11gR2 RAC下oc4j和gsd服务为OFFLINE状态
- JAVA GC算法
- Git常用命令
- Eclipse 编辑视图窗口最大化图标浮在最前,导致编辑视图双击最大化失效
- 部署CRM系统