`
dapp66
  • 浏览: 24729 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Java面向对象

 
阅读更多

看了一下java教程,将以前记忆模糊的整理了一下。

 

1. 继承是多态得以实现的基础,多态就是一种类型表现出多种状态,多态和绑定密切相关,绑定又分为前期绑定和后期绑定,多态就是在后期绑定的基础上实现的。
a) 前期绑定是在程序运行之前绑定,由编译器实现,又叫静态绑定;比如static方法和final方法以及private方法。
b) 后期绑定是在运行时根据对象的类型进行绑定,由方法调用机制实现。

 

2. 对成员变量private,提供一个或多个public方法实现对该成员变量的访问或者修改就叫做封装。

 

3. 重载:在同一个类中,方法名相同,参数列表不同(参数的类型、个数、顺序不同)所引起的两个方法的差异叫重载。与访问修饰符、返回值和抛出异常无关。

 

4. 重写:在存在继承关系的前提下,子类方法的方法名、参数、返回值与父类均相同,访问修饰符不能更严格,抛出的异常不能更广泛。

 

5. 构造方法一般是public的,但也可以是private的(单例设计模式)。

 

6. static标示的只能是类的成员变量,不能用在方法中。在静态方法中只能直接调用其他的静态成员。

 

7. 构造方法
a) 构造方法没有返回值类型,注意和普通方法区别。
b) 构造方法是最先执行的方法,但是晚于静态代码块和非静态代码块。
c) 抽象类和接口没有构造方法,因为不需要产生对象。

8. 抽象方法必须在抽象类里,但是抽象类不一定有抽象方法。没有抽象方法的抽象类也是有实际意义的,使得这个类不能被直接实例化。

 

9. 接口
a) 接口中定义的属性和方法不能被private和protected所修饰。
b) 如果一个类不想实现接口中的所有的方法,那么这个类应该声明为抽象类。

10. 接口和抽象类的区别:
a) 接口是用来被实现的,而抽象类是用来被继承的。
b) 接口没有方法实现,而抽象类有方法的实现。
c) 抽象类可拥有构造方法,而接口不可以有。
d) 接口中定义的变量只能是public、static、final的。

 

11. final类型的变量必须要初始化,否则报错;且最好在声明的时候就初始化。同时只能赋值一次,第二次赋值的时候就会报错。

12. 类
a) 对于类的声明,不能即是final的又是abstract的。Final修饰的类是一个终态的类,不可以被继承。
b) 方法的参数以及方法内的局部变量,仅仅能用final修饰,表示这个参数只可以用来为方法的参数赋值,本身不允许被修改。
c) 类变量(基本类型)可以不赋初值就使用,因为JVM会根据属性给其赋初始值。

13. Java类加载顺序
a) 父类静态变量(静态代码块)---> 子类静态变量(静态代码块)--->父类非静态变量(非静态代码块)--->父类构造函数——>子类非静态变量(非静态代码块)--->子类构造函数
b) 调用静态成员时,加载静态成员所在的类以及父类。
c) 第一次new对象时加载,第2次new对象的时候不加载。
d) 加载之类会先加载父类,有static和final修饰的类不会被加载,当做常量使用。

分享到:
评论

相关推荐

    java面向对象编程源码

    本书内容由浅入深,紧密结合实际,利用大量典型实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化 Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。...

    java面向对象编程pdf

    Java面向对象编程PDF 在这篇文章中,我们将对Java面向对象编程的基础知识进行总结和解释。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为...

    Java面向对象程序设计

    Java面向对象程序设计是编程领域中的重要主题,尤其在企业级应用开发中占据主导地位。本教程涵盖了这一关键概念,旨在帮助学习者深入理解和掌握Java的面向对象特性。以下是相关知识点的详细说明: 1. **面向对象...

    Java面向对象程序设计课后答案全解

    Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程(OOP)原则,为开发者提供了构建复杂软件系统的方法。本资源包含了该课程所有章节的课后习题答案,帮助学习者深入理解Java语言的面向对象...

    Java面向对象程序设计+源代码+课后习题答案)

    Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程(OOP)的概念,是一种强大的编程范式。在Java中,OOP的核心概念包括类、对象、封装、继承、多态等。这本书"Java面向对象程序设计"由耿祥义和...

    Java面向对象应用程序开发

    Java面向对象应用程序开发是软件开发领域中的核心主题,尤其对于初学者和专业开发者而言,理解并掌握这一技术至关重要。Java语言以其强大的面向对象特性、跨平台兼容性以及丰富的类库,成为了开发各种类型应用程序的...

    《Java面向对象编程》电子书+实例源代码+课后题答案.part10

    后续分卷改名为《Java面向对象编程相关资源》大家下载后要记得把压缩包改回原来的名字以便解压(如:Java面向对象编程相关资源.part11.rar--->Java面向对象编程书+实例源代码+课后题答案.part11.rar)。

    Java面向对象程序设计耿祥义版课件

    Java面向对象程序设计是编程领域中的核心概念,尤其在企业级应用开发中占据了主导地位。耿祥义版的课程着重讲解了这一主题,通过PPT和源码的形式,旨在帮助学习者深入理解并掌握Java的面向对象特性。下面将详细阐述...

    Java 面向对象 练习题与答案

    Java 面向对象编程练习题与答案 本资源摘要信息涵盖了 Java 面向对象编程的多个知识点,包括 Font 类、Toolkit 类、包机制、抽象类、数组操作等。 1. Font 类: Font 类是 Java 中的一个类,用于设置程序中的字体...

    JAVA面向对象程序设计(期末考试试题及答案)

    JAVA面向对象程序设计知识点总结 JAVA面向对象程序设计是 Java 编程语言的核心 contents,涵盖了面向对象编程的基本概念、语法规则、编程技术和实际应用等方面的知识。本文总结了 JAVA面向对象程序设计的知识点,...

    Java面向对象编程练习题.pdf

    Java面向对象编程练习题 本资源摘要信息涵盖了 Java 面向对象编程的基础知识,通过三个练习题,展示了 Java 编程语言的基本概念和应用。 练习题 01: 类的成员变量 本练习题展示了 Java 中类的成员变量的概念。类 ...

    Java面向对象程序设计(第二版)

    不过,我可以基于《Java面向对象程序设计(第二版)》这个标题和标签,来详细说明Java面向对象程序设计中可能涵盖的知识点。 在深入介绍之前,首先需要明确面向对象程序设计(OOP)是一种编程范式,它使用“对象”...

    习题解答-Java面向对象程序设计-邢国波-清华大学出版社.pdf

    Java面向对象程序设计是计算机科学中的一个重要主题,尤其在Java编程中。邢国波的《Java面向对象程序设计》一书旨在帮助读者理解和掌握Java语言的核心特性,特别是面向对象编程的概念。以下是根据提供的内容和标签...

    《Java面向对象程序设计(第2版)》课件

    Java面向对象程序设计是计算机科学中的一个重要领域,尤其在软件开发中占据核心地位。第二版的《Java面向对象程序设计》课件旨在深入浅出地介绍这一关键概念,帮助学习者掌握Java语言的基础以及面向对象编程的核心...

    java面向对象课程设计(有程序和报告)

    Java面向对象课程设计是计算机科学领域中一个重要的实践环节,旨在帮助学生深入理解面向对象编程的概念和技巧。在这个课程设计中,学生通常会被要求完成一个实际的项目,使用Java语言来实现,同时需要提交详细的报告...

    Java面向对象知识点梳理(思维导图)

    资源描述:Java面向对象知识点的思维导图 内容概要: 这个资源是一个Java面向对象知识点的思维导图,它涵盖了Java中面向对象编程的核心概念和重要知识点。导图中包含了类、对象、继承、多态、封装等基本概念,同时...

    Java面向对象逻辑思维导图

    Java面向对象,自己学习整理的Java的面向对象的思维导图。

    java面向对象课后题答案

    Java面向对象编程是Java语言的核心特性,它基于面向对象编程思想,使得代码更易于理解和维护。孙卫琴老师的《深入浅出Java面向对象》是一本深受程序员喜爱的教材,其中的课后习题旨在帮助学生深入理解面向对象的原理...

    Java面向对象程序设计(第3版)-PPT课件

    《Java面向对象程序设计(第3版)》是人民邮电出版社出版的一部经典教材,由杨晓燕和李选平两位专家共同编著。该书深入浅出地讲解了Java编程语言的核心概念和面向对象编程思想。PPT课件是教学辅助资料,通常包含了...

Global site tag (gtag.js) - Google Analytics