Java —— 继承与接口

原创 2016年08月30日 19:36:00

1、继承性

1)、private:不可继承。

2)、protected:同一包或不同包间均可继承。

3)、public:不限。继承性与protected同。

此外,不指定上述三者的友好型只限于同一个包内继承。


2、继承后的访问权限

1)、private:只限于自身类内的访问。

2)、protected:实际创建的位置,与声明的位置在同一包中则可访问。如:

A类有protected方法functionA,B类继承A类,C类继承B类,C类有独特的protected方法functionC。若在Other类中用C类创建一个对象object。则object能否访问functionA方法取决于Other类与A类是否在同一包中,能否访问functionC方法取决于Other类与C类是否在同一包中。

3)、public:不限。

简言之,private限于类内,protected限于包内,public不限。


3、super与this

1)、super:用于调用子类隐藏了的父类的成员变量或方法。

2)、this:用于类内调用被局部变量或参数隐藏了的成员变量。

即super与this关键字都可“去隐藏”。


4、final

final关键字可以修饰类、成员变量和方法中的局部变量。有时使用final是为了出于安全考虑。

final类不能被继承,final方法不能被重载或重写。


5、对象的上转型对象

上转型对象,即将子类实体的引用赋给父类对象得到的对象。

可操作的变量或方法:

对象:新增的变量或方法、继承或重写的方法、继承或隐藏的变量。

上转型对象:继承或重写的方法、继承或隐藏的变量。

说明:即上转型对象只能调用所转父类所具有的变量或方法,但特殊的是,如果子类重写了父类的某个方法后,当对象的上转型对象调用这个方法时一定是调用了子类重写的方法。从子类对象的构造过程便可很好理解。

子类对象构造过程:子类创建对象时,相应的父类的变量与方法也开辟了内存空间,但父类开辟的空间中只有能被子类继承的变量或方法对应的空间被该子类对象引用(拥有),且父类中被该子类重写的方法的空间将不被引用,而是引用了子类重写后的自己的方法,所以上转型后,调用此方法,将是子类重写后的方法。


6、多态

多个子类重写父类的同一方法所产生子类不同行为的现象。


7、abstract类和abstract方法

abstract修饰的类为抽象类。特点:1、可有抽象方法、非抽象方法(也可没有抽象方法)、常量或变量。2、因为拥有抽象方法,所以不能用new创建对象。

(抽象类最终是必须会被继承的类,且子类必须重写抽象犯法,所以abstract方法不能同时用final修饰。)

意义与重点:

抽象类只关心操作,即只关心方法名字、类型及参数,但不关心这些操作具体实现的细节,即不关心方法体。抽象类的作用也正是为了表明某些方法的重要性,为总体设计起着指导作用,从而不必拘泥于细节的实现,具体细节由子类实现。


8、接口interface

Java不支持多继承性,即一个类只能有一个父类。单继承性使得java简单、易于管理。为了克服单继承的缺点,java使用了接口,一个类可以实现多个接口。

接口声明:

interface 接口名{

接口体(常量定义与方法定义,不能定义变量);//接口中常量与方法一定都是public的,但可省略public

}

注:实现接口的类重写接口方法时一定不能忽略public,否则就降低了接口方法的访问权限,导致出错。


9、接口回调

接口回调与上转型类似,只是将实现接口的类的对象引用赋给接口声明的变量。(关键:接口也可像类一样声明变量!)


10、接口多态

同普通的多态。

版权声明:转载请注明出处!

Java ——基础之继承与接口的区别

Java 基础之继承与接口的区别 抽象类:抽象类体现了数据抽象的思想,是实现多态的一种机制。它定义了一组抽象的方法,至于这组抽象方法的具体表现形式由派生类来实现。同时抽象类提供了继承的概念,...

黑马程序员——java基础之继承、抽象、接口

——- android培训、java培训、期待与您交流! ———-一、继承1.什么是继承 继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展...

编码练习——Java-5-接口、继承与多态

基础 定义接口 public interface ICalculate { final float PI=3.14159f; float getArea(float r); f...

黑马程序员——Java基础:继承、final关键字、抽象、接口、多态

一、面向对象之继承——extends 子类和父类:多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。多个类可以称为子类,单 独这个类...

黑马程序员 ——Java基础之继承、抽象、接口、多态

继承 关键字:extends   1,提高了代码的复用性 2,让与类之间产生了关系,有了这个关系,才有了多态的特性   注意:不能为了获取其他类的功能,简化代码而继承; 必须是类与类之间有所属关系才可...
  • zdh_61
  • zdh_61
  • 2015年05月02日 17:50
  • 232

Java基础——继承接口抽象类

继承 继承是面向对象的最显著的特使.继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。 1.子类继承父类的方法和属性 2.构造器不能继承 3.实例化子类,会递归分配...
  • QXC1281
  • QXC1281
  • 2015年06月27日 20:56
  • 417

Java笔记整理——接口、继承与多态

一、类的继承 在Java中使用extents关键字来标识两个类的继承关系。在子类中,可以联通初始化父类构造方法来完成子类初始化操作,既可以在子类的构造方法中使用super()语句调用父类的构...

JAVA基础 —— 继承、抽象、接口

-----------android培训、java培训、java学习型技术博客、期待与您交流!------------  一、继承 (一)、概述 继承是面向对象的一个重要特征。当多个类中存在相同属...

黑马程序员——Java基础--继承、抽象、接口

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 继承、抽象、接口 一、继承 1、特点: a.提高的代码的复用性。 b.让类与类之间...

黑马程序员——Java基础---继承、抽象、接口(二)

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、多态 1.多态概述      定义:某一类事物的多种存在形态。 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java —— 继承与接口
举报原因:
原因补充:

(最多只允许输入30个字)