本文主要是讲述Java编程基础-抽象类,更多Java技术知识,请登陆疯狂软件教育官网。  抽象类:  抽象:不具体,看不明白关键字abstract  抽象类的特点:  1.抽象方法只能定义在抽象类中,抽象类和抽象方法必须由abstract关键字修饰(可以描述类和方法。不可以描述变量)2.抽象方法只定义方法声明,并不定义方法实现。3.抽象类不可以被创建对像(实例化)  4.只有通过之类继承抽象类并覆盖了抽象类中的所有抽象方法后,该子类才可以实例化。否则,该子类还是一个抽象类。  抽象类的细节:  1.抽象类中是否有构造函数?有,用于给子类对象进行初始化2.抽象类中是否可以定义非抽想法?  可以。其实,抽象类和一般类没有太大的区别,都是在描述事物,只不过抽象类在描述事物时,有些功能不具体。所以抽象类和一般类在定义上,都是需要定义属性和行为的。只不过,比一般类多了一个抽象函数。而且比一般类少了一个创建对象的部分。  3.抽象关键字 abstract和那些关键字不可以共存。final,private,staitc、、因为抽象类要倍实现和继承、4.抽象类中可不可以不定义抽象方法?可以。抽象方法目的仅仅为了不让该类创建对象。  /*  员工和经理的案例  员工只要入职,必须具备姓名工资还有工号  */  //将共性内容抽取  abstract class Company  {  private String name;//姓名  private String id;//工号  private double money;//工资  Company(String name,String id,double money){  this.name = name;  this.id = id;  this.money=money;  }  //提供get set方法,间接的访问类中成员变量  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public String getId() {  return id;  }  public void setId(String id) {  this.id = id;  }  public double getMoney() {  return money;  }  public void setMoney(double money) {  this.money = money;  }  public abstract void job();  }  //定义员工类  class Programming extends Company  {  //员工类的构造方法  Programming(String name,String id,double money){  super(name,id,money);  }  //工作的方法  public void job(){  System.out.println(super.getName()+".."+super.getId()+".."+super.getMoney()+"写代码");  }  }  //定义经理类  class Manager extends Company  {  Manager(String name,String id,double money,double bonus){  super(name,id,money);  this.bonus = bonus;  }  private double bonus;//奖金  //工作的方法  public void job(){  System.out.println(super.getName()+".."+super.getId()+".."+super.getMoney()+"..."+bonus+"  管理工作");  }  }  class AbstractTest1  {  public static void main(String[] args)  {  Programming p = new Programming("zhangsan","开发部001",10003.31);  p.job();  Manager m = new Manager("李四","管理部001",1000.21,3453454.5);  m.job();  //System.out.println("Hello World!");  }  }

java编程一般类抽象类的定义,Java编程基础抽象类相关推荐

  1. java类名可以是数字吗_在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( )。_学小易找答案...

    [简答题]Java 支持多继承吗 ? [单选题]以下关于继承的叙述正确的是( ). [单选题]在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数.类型或顺序各不相同,传回的值也 ...

  2. java获取其他类的线程,使用Java实现面向对象编程——第七章 多线程

    1.进程:是指运行中的应用程序,每个进程都有自己独立的地址空间(内存空间): Eg:用户点击桌面的IE浏览器,就启动了一个进程,操作系统就会为该进程分配独立的地址空间.当用户再次点击左面的IE浏览器, ...

  3. java教务系统类设计_基于Java EE体系的高校教务管理系统的设计开发

    <基于Java EE体系的高校教务管理系统的设计开发>由会员分享,可在线阅读,更多相关<基于Java EE体系的高校教务管理系统的设计开发(3页珍藏版)>请在人人文库网上搜索. ...

  4. java launcher_JAR清单类路径不仅适用于Java Application Launcher

    java launcher 自从我开始学习Java以来​​,我几乎已经知道, 清单文件中的Class-Path标头字段为可执行JAR (具有由另一个称为Main-Class清单指定应用程序起点的 JA ...

  5. java多个类共享的数据_Java---多线程基础总结

    小伙伴晚上好,今天有看到一句话跟小伙伴们分享一下:理想的热情是有棱角的,而工作的琐碎却一直在磨平这些棱角.这句话每个人的理解都不一样,共同点就是emmm容易引起共鸣吧. OK,今天给大家带来的是Jav ...

  6. java遍历一个类的属性名,java遍历对象属性

    java对象动态添加属性,Class对象和Java反射机制,java遍历对象属性,js对象动态添加属性 java 对象动态添加属性,Class对象和Java反射机制,java遍历对象属性,js对象动态 ...

  7. java 加载类java_深入研究Java类加载机制

    深入研究Java类加载机制 类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指导开发者采取更有效的措施配合程序执行. 研究类加载机制的第二个目的是让程序能动态的控制类加载,比 ...

  8. java可以在类中直接定义语句_基于javac实现的编译时注解

    很多同学都知道jdk中有一个很重要的jar : tools.jar,但是 很少有人知道这个包里面究竟有哪些好玩的东西. javac入口及编译过程 在使用javac命令去编译源文件时,实际上是去执行co ...

  9. Java(实验三)类与对象-定义并实现一个长方体类(Cube),包含长(length)、宽(width)与高(height)等三个属性

    一.实验目的: 1.学会定义并实现类. 2.学会定义并创建类的对象,通过类的对象访问类的成员属性与方法. 3.学会定义并实现派生类,学会使用派生类的对象. 4.理解并学会使用类的多态性. 二.实验环境 ...

最新文章

  1. 在CentOS 6.3 64bit上安装最新版tsar并监控ATS 5.3
  2. Java中 实体类 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念
  3. shell   %% , ##,#,% 用法
  4. oracle同义词truncate,详解Oracle DELETE和TRUNCATE 的区别
  5. ielts indicator 考前准备 checklist
  6. WCF4.0 –- RESTful WCF Services (1) (入门)
  7. 前端技术公众号运营心得记录
  8. html5-css的使用强制优先级
  9. IE9 新功能 五大新特点
  10. oracle释放shm空间,安装11gRAC时提示/dev/shm大小不足
  11. Spring Boot基础学习笔记15:实现文件下载功能
  12. H.264的三种开源编码器比较
  13. mysql utf-8转utf8mb4_MySQL UTF8 转为 utf8mb4
  14. Programming WCF Services中文翻译(3)-契约
  15. 云计算虚拟化之Docker上如何安装Mongodb?
  16. 数学分析 导数的四则运算法则及多个函数的推广
  17. [100124]红楼梦:林黛玉与北静王【硬盘版】[带全CG存档+攻略]
  18. Unity射线检测实例
  19. FPGA基础之HLS
  20. Day10安卓 专高 day10 ContentProvider内容提供者

热门文章

  1. 怎么安装红旗Linux5,如何用硬盘安装红旗LINUX5_0.doc
  2. java中线性结构的例子_java数据结构--线性结构
  3. View的三大流程之View的测量
  4. 大连理工18秋计算机应用基础,大连理工大学网络教育本科计算机应用基础入学考试模拟题...
  5. 卷积神经网络mnist手写数字识别代码_搭建经典LeNet5 CNN卷积神经网络对Mnist手写数字数据识别实例与注释讲解,准确率达到97%...
  6. java环境变量的配置和使用
  7. 杂项-事务:OLTP(联机事务处理过程)
  8. 前后数据交互(ajax) -- 初始化页面表格
  9. 登录时本地保存账号密码及关闭ARC的方法
  10. (转)详解Vs2008下打包安装程序的一些技巧(含win7下提权限、卸载以及安装时定向到网页)...