继承的java_Java中的继承

Java中的继承

1.继承的基本概念

当多个类之间存在相同的属性和方法时,在父类中定义这些相同的属性和方法,所有的子类无需重新定义这些属性和方法,只需要通过extends语句声明继承Base类。

(1)继承的东西

a.当sub类和base类位于同一个包中时,sub类继承base类中public,protected和默认访问级别的成员(包括成员变量和成员方法);

b.当sub类和base类位于不同的包中时,sub类继承base类中的public和protected访问级别的成员。

(2)Java不支持多继承

(3)Java支持多级继承,所有的Java类都直接或者间接地继承了java.lang.Object类,Object类中定义了所有Java对象都具有的相同行为,位于下层的子类会继承上层所有直接或间接父类的属性和方法。

2.方法重载

(1)两个方法的方法名相同;

(2)方法的参数类型,个数,顺序至少有一项不相同;

(3)方法的返回类型可以不相同

(4)方法的修饰符可以不相同

编译器依靠方法名和参数签名来区分调用哪个方法,参数签名指参数类型,参数个数和参数顺序。

3.方法覆盖

(1)子类中的一个方法,a.名称,b.返回类型和c.参数签名与父类中的某个方法的名称,返回类型和参数签名相匹配,那么,子类的方法覆盖了父类的方法;   注意三个条件:函数名,参数列表和返回类型

编译器会首先判断方法的方法名和参数签名,如果完全相同,编译器会认为是子类方法对父类方法的覆盖,这时如果返回类型不同,会出现编译错误

(2)子类不能缩小父类方法的访问权限

(3)子类方法不能抛出比父类方法更多的异常,子类方法抛出的异常必须和父类方法抛出的异常相同,或者是父类方法抛出异常的子类

(4)同一个类中的方法只能够被重载,不能够被覆盖

(5)父类的静态方法不能被子类覆盖为非静态方法,父类的非静态方法也不能被子类覆盖为静态方法。

(6)关于静态方法,子类可以定义与父类的静态方法同名,以便在子类中隐藏父类的静态方法

同覆盖父类的实例方法一样�

相关文档:

一个优秀的Java程序员必须了解GC的工作原理、如何优化GC的性能、如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统、实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能。本篇文章首先简单介绍GC的工作原理之后,然后再对GC的几个关键问题进行深入探讨,最后提出一些Java程序� ......

/**

* 获取服务器的web地址

* @return

*/

private String getWebPath(){

String _tempStr = Thread.currentThread().getContextClassLoader().getResource("").toString();

_tempStr=_tempStr.substring ......

这篇文字写的很好,推荐给自己和大家!

事务策略: 了解事务陷阱

在 Java 平台中实现事务时要注意的常见错误

级别: 中级

Mark Richards, 主管和高级技术架构师, Collaborative Consulting, LLC

2009 年 3 月 06 日

事务处理的目标应该是实现数据的高度完整性和一致性。本文是为 Java 平台开� ......

事实上网络编程简单的理解就是两台计算机相互通讯数据而已。对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了。Java SDK提供一些相对简单的Api来完成这些工作,Socket就是其中之一。

对于Java而言。这些Api存在与Java.net这个包里面。因此只要导入这个包就可以准备网络编程了。网络� ......

核心提示:本文描述了在J2me中开发主要使用的网络连接方法,分别详细介绍了使用http和socket两种方法。 HttpConnection 首先我们先来看一个简单的例子吧: 主要用到的java包: javax.microedition.io.*; public String requestGET(String URLString,String URL) throws

本文描述了在J2me中开发主要使用的网络连接方法, ......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值