Java复习之面向对象高级

一、继承的基本实现

1. 继承的概念及实现(extends)

2. 继承实现的各种限制

1)只能单继承,不能多重继承,但允许多层继承

二、继承的进一步研究

1. 子类对象的实例化过程(先祖先,后自己)

子类构造方法中隐含了super()调用父类的构造函数

2. 方法覆写的概念及实现

1)被子类覆写的方法不能拥有比父类方法更加严格的访问权限

2)在父类中为private的方法,子类中设置为default的方法并没有覆写父类的方法,而是重新定义了一个新的方法

3)方法重载(overloading)VS 方法覆写(overriding)

3. super关键字的作用 super.方法()调用父类的方法

this VS super

三、final关键字

1. final关键字使用要求

1)完结器,final声明的类不能被继承,final声明的方法不能被覆写,final声明的变量即成为常量,常量不可被修改

2)全局常量:static final

2. 全局常量的声明

四、抽象类的基本概念

1. 抽象类的定义格式(abstract)

2. 抽象类的使用规则

抽象类不能使用final关键字;

抽象类可以有构造方法

五、接口

1. 接口的定义格式及使用

特殊的类:全部是全局常量和公共的抽象方法

1) 接口必须有子类,子类必须覆写全部的抽象方法

2)一个子类可以实现多个接口

3) 接口不可以继承抽象类,但是可以通过extends继承多个接口

2. 接口与抽象类的关系

六、对象的多态性

1. 对象的向上转型及向下转型

java中多态的体现:1)方法的重载与覆写; 2)对象的多态性(向上转型 & 向下转型)

2. 对象转型的限制

七、instanceof 关键字

1. instanceof的作用及使用时机

2. instanceof对对象转型进行安全验证

向下转型一定要增加验证

一个类永远不要继承一个已经实现好的类,只能继承抽象类或接口

八、抽象类与接口应用

1. 模板设计

抽象类用于模板设计,接口用于制定标准

2. 工厂设计模式

3. 代理设计模式

4. 适配器设计模式(继承接口的抽象类)

5. 抽象类与接口使用区别

6. 抽象类里面也可以包含接口,一个接口中也可以包含一个抽象类

九、Object类

1. Object 类作用

2. Object类中toString(),equals()方法

3. Object类接收引用数据类型的操作

Object可以接收对象,接收任意引用数据类型

十、包装类

1. 包装类的作用

Integer, Character, Byte, Short,Long,Float,Double, Boolean

2. 包装类的自动装箱及自动拆箱操作

3. 包装类的转换操作

把字符串变为指定的数据类型

Integer.parseInt()

Float.parseFloat()

十一、匿名内部类

1. 匿名内部类的作用

2. 匿名内部类的定义格式

时间: 2024-08-01 14:01:32

Java复习之面向对象高级的相关文章

python基础-面向对象高级编程

实例化对象绑定属性 s.name = 'Michael' # 动态给实例绑定一个属性 类绑定方法---所有实例化对象均可调用Student.set_score = set_score 实例化对象绑定方法---只有该对象可调用from types import MethodType#绑定方法需要使用MethodTypes.set_age = MethodType(set_age, s) # 给实例绑定一个方法 Python内置的@property装饰器就是负责把一个方法变成属性调用的把一个gett

Java复习第二天---JavaSE基础

[1]以下关于 JVM 的叙述,哪些项正确? A.JVM 运行于操作系统之上,它依赖于操作系统 B.JVM 运行于操作系统之上,它与操作系统无关 C.JVM 支持 Java 程序运行,它能够直接运行 Java 字节码文件 D.JVM 支持 Java 程序运行,它能够直接运行 Java 源代码文件 扩展名为.java的是源代码文件(文本文件):开发时编写代码的文件 扩展名为.class的是字节码文件(二进制):系统运行时执行的文件 [2]下列选项中正确的表达式是: A.byte b = 128; 

python基础--面向对象高级、异常处理、网络编程

一.面向对象高级 1.接口与归一化设计 接口只是定义了一些方法,而没有去实现,多用于程序设计时,只是设计需要有什么样的功能,但是并没有实现任何功能,这些功能需要被另一个类(B)继承后,由 类B去实现其中的某个功能或全部功能. 在python中接口由抽象类和抽象方法去实现,接口是不能被实例化的,只能被别的类继承去实现相应的功能 归一化让使用者无需关心对象的类是什么,只需要知道这些对象都具备某些功能就可以了,这极大地降低了使用者的使用难度. 归一化使得高层的外部使用者可以不加区分的处理所有接口兼容的

极客班GeekBand - C++面向对象高级开发 - 2

极客班GeekBand - C++面向对象高级开发 - 2 极客班GeekBand - C面向对象高级开发 - 2 讲师 - 侯捷 复习Complex类的实现过程 三大函数拷贝构造拷贝复制析构 栈堆与内存管理 Stack VS Heap stack objectsstatic local objectsglobal objects的生命期 heap objects的生命周期 new先分配memory再调用ctor delete先调用dtor在释放memory 动态分配所得内存块memory bl

面向对象(高级篇之抽象类与接口的应用)

抽象类的实际应用-----模板设计 接口的实际应用--------制定标准 设计模式-------工厂设计 程序在接口和子类之间加入了一个过渡端,通过此过渡端取得接口的实例化对象. 设计模式-------代理设计 所谓的代理设计就是指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理. 相当于我玩一个游戏需要登录游戏,在这个登录的时候可以设计两个类,一个是登录,另一个是检验你的用户名与密码,而登录是附着在检验类上的. 设计模式-------适配器设计 对于

Java基础和面向对象

Java基础和面向对象 一.数据类型和运算符 标识符 组成:字母.数字.下划线.$ 首字母:不能是数字 见名知义 不能是关键字(48个) 正确的:name.name123.age._name.$name 错误的:1name.public.123.na%me 标识符主要给一个元素起名字,需要符合起名字的以上4种规则.比如说,类的名字:首字母大写:变量名称:小写:方法名称:驼峰命名:数组名称.接口名称.集合名称. //你定义为汉字也可以,不过不推荐,因为国际语言以English为主.为了面向世界,使

Python3 面向对象 高级编程

正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.  class Student(object): pass 然后,尝试给实例绑定一个属性: >>> s = Student() >>> s.name = 'Michael' # 动态给实例绑定一个属性 还可以尝试给实例绑定一个方法: >>> def set_age(self, age): # 定义一个函数作为实例方法 ...

黑马程序员【Java中的面向对象】

Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释,什么是对象?万物皆对象!够霸气吧,当时的面向对象思想对我来说还是挺崩溃的,什么继承多态啊!经过了无数的联系项目的书写,终于对面向对象有了一定的理解,现在刚好在java的学习中再度重温面向对象,那么就将我眼中的面向对象写出来分享给大家. 说到面向对象,我们就不得不提一下他的三大特性,继承封装和多态.

学java教程之面向对象(四)

学编程吧学java教程之面向对象(四)发布了,欢迎通过xuebiancheng8.com来访问 本次课来分析java面向对象之构造方法.什么是构造方法呢,构造方法听名字顾名思义,构造的时候执行的方法就叫构造方法. 没错,构造方法就是在构造对象的时候执行的方法,就是构造方法,那什么时候构造对象呢,是不是在new的时候调用构造对象呢,所以构造方法就是在new对象的时候执行的方法就是构造方法.构造方法一般用来为对象赋初值.完成对象的初始化. 下面我们来看如何定义构造方法. public class P