Java中的类、抽象类和接口的区别和联系.docVIP

Java中的类、抽象类和接口的区别和联系.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java中的类、抽象类和接口的区别和联系.doc

Java中类、抽象类、接口之间的区别和联系。 ——客观世界,是由许多事物构成的,这些事物既可以是有形的(比如一辆汽车),也可以是无形的(比如一次会议)。把客观世界中的事物映射到面向对象的程序设计中就是对象。抽象方法:仅有定义,没有具体实现的方法抽象类:含有抽象方法的类抽象类不能被实例化,也就是说,不能有自己的对象 声明接口使用关键字“interface” 接口中一般只包含一组public抽象方法(且必须是公有抽象方法,但方法定义中public abstract可省略),也可以包含public final数据 Java一个类只能直接继承(extends)另一个类,不允许一个子类继承多个超类,却允许一个子类继承一个超类并实现多个接口. 一个公司,有老板,老板聘的经理,还有员工, 类就是员工,抽象类就是经理,接口就是老板。 接口里就是给个方法,但是他自己不做,比如老板说我要那个文件,给我定个机票,我要那个策划方案等,都是下面人做。老板只说不做。 抽象类给的方法,有的他自己做,有的其他人做。比如经理说我要那个文档,员工就要发给他,但是他自己也要做点事,比如拿方案给老板看。经理又说又做。 一般类给的方法,就是什么都要做,都要实现。 java实例化对象的过程 分类: java学习笔记 2010-09-16 12:58443人阅读评论(0)举报 学习JAVAJAVA的人总搞清楚对象是如何实例化的,假如类之间存在继承关系,那就更糊涂了。下面我们通过两个例题来说明对象的实例化过程。 编译并运行该程序会有以下输出 Static Block Employee Company:china soft Non-Static Block Employee phone:0755Employee(String) Empoloyee() 下面我们来对结果做分析: 1 34行实例化对象时, 先对给静态变量分配内存空间并初始化,然后执行静态块。 因此,在这里会输出: Static Block Employee Company:china soft Employee Company:china soft的输出也说明是先初始化静态变量然后再执行静态块,否则company将为null。 2然后在内存中为Employee分配内存空间,并做默认初始化(即所有变量初始化为默认值,这里都初始化为null)。 3 默认初始化完成后,开始显示初始化。即执行第5行,将phone初始化0755并且执行非静态方法块;因此在这里会有以下输出: Non-Static Block Employee phone:07554 最后才调用默认构造函数,在 this(Unknow)这行代码是调用构造器方法,在默认构造函数中调用了带参数的构造函数,所以在这里先输出带参数构造函数中的:Employee(String),然后才输出:Empoloyee()。 例2 上面的代码中ManagerEmployee类,当我们编译并运行Manager类,会产生以下的输出: Static Block Employee Company:china soft Sub Static Block Manager department:sale Non-Static Block Employee phone:0755Employee(String) Empoloyee() Sub Non-Static Block Manager salary:8000 Manager(String) Manager() 下面我们对结果做分析: 1 34实例化对象时,由于Manager继承了Employee,所以先从父类Employee开始;先给父类静态变量分配内存空间并初始化,然后执行父类静态块。然后再给子类静态变量分配内存空间并初始化,然后执行子类静态块,所以会得到以下输出: Static Block Employee Company:china soft Sub Static Block Manager department:sale 2Employee分配内存空间,并做默认初始化;再为子类Manager分配内存空间,并做默认初始化。 3默认初始化完成后,从父类开始显示初始化并执行非静态方法块和构造函数,然后再子类开始显示初始化并执行非静态方法块和构造函数。因此会产生以下的输出: Non-Static Block Employee phone:0755Employee(String) Empoloyee() Sub Non-Static Block Manager salary:8000 Manager(String) Manager()

文档评论(0)

docinpfd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档