继承和接口和java访问权限修饰符总结.doc

继承和接口和java访问权限修饰符总结.doc

ID:50542170

大小:32.00 KB

页数:9页

时间:2020-03-10

继承和接口和java访问权限修饰符总结.doc_第1页
继承和接口和java访问权限修饰符总结.doc_第2页
继承和接口和java访问权限修饰符总结.doc_第3页
继承和接口和java访问权限修饰符总结.doc_第4页
继承和接口和java访问权限修饰符总结.doc_第5页
资源描述:

《继承和接口和java访问权限修饰符总结.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第三章,第四章内容总结---Mryang多态性:发送消息给某个对象,让该对象自行决定响应何种行为。通过将子类对象引用赋值给超类对象引用变量来实现动态方法调用。动态绑定:一、使用父类类型的引用指向子类的对象;二、该引用只能调用父类中定义的方法和变量;三、如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法;(动态连接、动态调用)四、变量没有被重写(覆盖)的概念,”重写“的概念只针对方法,1.方法重载:在同一个类中定义了两个以上的同名的方法,但是它们拥有不同的参数列表。1.

2、1重载的条件:参数不同a.个数不相同b.类型不同***c.顺序不同注意:与方法的返回类型无关,和访问修饰符无关2.方法重写:在子类中定义了一个和父类中相同的方法,父类的方法在子类中就被覆盖了(隐藏了).3.动态绑定:父类的引用指向子类的对象,如果调用的方法在子类中被重写,则调用子类重写了的方法。如果调用的方法在父类中没有定义,则报错。访问修饰符:1.public2.protected3.private4.默认的方法修饰符:1.static:静态方法中不能访问非静态的变量和方法,也不能使用this和su

3、per关键字static关键字修饰的代码不依赖具体的对象实例.总是比普通的代码块先加载2.final:能修饰类,方法,属性。2.1:final修饰类时:该类不能被继承.2.2:final修饰方法时:该方法不能被重写.2.3:final修饰类的成员属性时:声明时就要赋值,或者在构造方法中给它赋值.final修饰类的属性时:必须在声明时赋值final修饰局部变量:如果在声明时没有赋值,则在后面的代码中可以有一次给它赋值的机会,一旦赋值则该变量的值不可更改。final修饰的变量是引用类型时指引用不能更改,引

4、用指向的对象的属性值是可以更改的.Final表示最终的3.abstract:修饰类,方法.抽象方法使用abstract修饰符修饰抽象方法只能在抽象类中声明。即:如果一个类中存在一个或以上的抽象方法,则该类也要声明为抽象类。3.1:抽象类不能实例化对象。3.2:抽象类中可以有抽象方法,也可以有普通方法。3.3:构造方法不能声明为抽象的,因为子类无法覆盖。3.4:子类继承抽象类时必须重写父类中所有的抽象方法,否则自己也要声明为抽象类.3.5:可以声明抽象类的引用指向子类的对象。动态绑定4接口:关键字int

5、erface声明接口。解决java不能多重继承的机制。1.接口中的方法都是抽象的。2.接口中的方法默认时public和abstract,所以public和abstract可以省略.3.接口中可以声明属性,属性默认为publicstaticfinal4.接口使用关键字interface声明,使用implements实现接口.问题:接口和抽象的区别?相同点区别:继承:代码的可重用性抽象类:代码的灵活性固定的方法(数据库)接口:代码的可扩展性java访问权限修饰符public protected defau

6、ltprivate用法总结     首先声明:java中,default这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是default。为了条理清晰,分三种不同情况来总结。  一访问权限修饰符修饰成员变量和方法  public:表明该成员变量和方法是共有的,能在任何情况下被访问。    protected:必须在同一包中才能被访问及其子类中可以(说的比较简单,看个例子就明白了)         eg:classA         {           protectedin

7、tweight;           protectedintf(inta,intb  )             {             //方法体           }          }           假设B与A在同一个包中,则          classB         {           voidg()           {             Aa=newA();             A.weight=100;//合法             A.f(3,4

8、);   //合法            }          }  特别说明:什么是在同一个包中?  答:用package打包在一起的class,叫在同一个包中。(不明白,举个例子)      eg:在JDK的srcjavaio中,你会看到许多java类,第一句源代码都是packagejava.io;      没有使用package打包的,在同一目录下的类也会被视做同一个包。    default:在这种情况下中,同包中的子类。区别在第二和第三种

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。