我的学习之路-JAVA-04
2016-05-19 18:04
399 查看
/* 抽象类与抽象方法 特点: 1.抽象方法定义在抽象类中,必须被abstract修饰 2.抽象类不能被实例化,因为调用抽象方法没有意义 3.抽象类必须有其子类覆盖了所有的抽象方法后,该子类才可以被实例化,否则这个子类还是抽象类 细节: 1.抽象类虽然不能被实例化,但是也有构造函数,以为可以给子类对象初始化 2.抽象类中可以不定义抽象函数,目的是不让该类创建对象,但是很少见,如AWT的适配器对象就是这样的 3.abstrastic不可与private,static, final共同存在 4.抽象类一定是一个父类 */ /* 抽象类练习: 某公司有程序员和项目经理,程序员有姓名,工号,工资属性,有工作行为 项目经理有有姓名,工号,工资,奖金属性,有工作行为 为他们进项建模 */ abstract class Employee { private String name; private String num; private double pay; Employee(String name, String num, double pay) { this.name = name; this.num = num; this.pay = pay; } public abstract void work(); public void show() { System.out.println(this.name); System.out.println(this.num); System.out.println(this.pay); } } class Programmer extends Employee { Programmer(String name, String num, double pay) { super(name, num, pay); } public void work() { System.out.println("程序员工作。。。"); } } class Manager extends Employee { double prize; Manager(String name, String num, double pay, double prize) { super(name, num, pay); this.prize = prize; } public void work() { System.out.println("经理工作。。。"); } public void show() { super.show(); System.out.println(this.prize); } } class AbstractDemo { public static void main(String[] args) { Programmer a = new Programmer("ming","12345",8000); a.work(); a.show(); Manager b = new Manager("fei","56789",10000,3000); b.work(); b.show(); } }
相关文章推荐
- 利用Myeclipse自动生成webService客户端代码
- myeclipse 中的xml第一行出错
- 【java】:java从零开始学2:如何打开eclipse的工程管理目录
- Java ConcurrentModificationException异常原因和解决方法
- java自定义标签的简单例子
- 【java】:java从零开始学1:环境配置
- 在eclipse中使用Lombok
- SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载
- java Socket实现简单在线聊天(二)
- Spring MVC 流程图
- struts2详细工作流程
- Java基础---泛型
- JAVA中的GC机制
- java基础——抽象类
- 使用java去对比2个带数学公式的字符串
- java jar服务部署脚本编写
- FusionCharts在Java中的基本使用
- 垃圾回收,引用类型和五种可达性-强、软、弱、虚、不可达
- JAVA-Spring学习笔记
- spring 使用注解来调度定时任务