`
highfly-s
  • 浏览: 100446 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

学习总结 JAVA SE Lesson 1

    博客分类:
  • J2SE
 
阅读更多

1. 类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念。先有类,然后由类来生成对象(Object)。对象又叫做实例(Instance)。
2. 类由两大部分构成:属性以及方法。属性一般用名词来表示,方法一般用动词来表示。
3. 如果一个java源文件中定义了多个类,那么这些类中最多只能有一个类是public的,换句话说,定义的多个类可以都不是public的。
4. 在Java中进行方法的参数传递时,无论传递的是原生数据类型还是引用类型,参数传递方式统一是传值(pass by value)。Java中没有传引用(pass by reference)的概念。
5. 方法重载(Overload)。表示两个或多个方法名字相同,但方法参数不同。方法参数不同有两层含义:1)参数个数不同。2)参数类型不同。 注意:方法的返回值对重载没有任何影响。
6. 构造方法重载:只需看参数即可。如果想在一个构造方法中调用另外一个构造方法,那么可以使用this()的方式调用,this()括号中的参数表示目标构造方法的参数。this()必须要作为构造方法的第一条语句,换句话说,this()之前不能有任何可执行的代码。
7. 继承(Inheritence):Java是单继承的,意味着一个类只能从
另一个类继承(被继承的类叫做父类【基类,base class】, 继承的类叫做子类),Java中的继承使用extends关键字。
8. 当生成子类对象时,Java默认首先调用父类的不带参数的构造方法,然后执行该构造方法,生成父类的对象。接下来,再去调用子类的构造方法,生成子类的对象。【要想生成子类的对象,首先需要生成父类的对象,没有父类对象就没有子类对象。比如说:没有父亲,就没有孩子】。
9. super关键字:super表示对父类对象的引用。
10. 如果子类使用super()显式调用父类的某个构造方法,那么在执行的时候就会寻找与super()所对应的构造方法而不会再去寻找父类的不带参数的构造方法。与this一样,super也必须要作为构造方法的第一条执行语句,前面不能有其他可执行语句。
11. 关于继承的3点:
a) 父类有的,子类也有
b) 父类没有的,子类可以增加
c) 父类有的,子类可以改变
12. 关于继承的注意事项
a) 构造方法不能被继承
b) 方法和属性可以被继承
c) 子类的构造方法隐式地调用父类的不带参数的构造方法
d) 当父类没有不带参数的构造方法时,子类需要使用super来显
式地调用父类的构造方法,super指的是对父类的引用
e) super关键字必须是构造方法中的第一行语句。
13. 方法重写(Override):又叫做覆写,子类与父类的方法返回类型一样、方法名称一样,参数一样,这样我们说子类与父类的方法构成了重写关系。
14. 方法重写与方法重载之间的关系:重载发生在同一个类内部的两个或多个方法。重写发生在父类与子类之间。
15. 当两个方法形成重写关系时,可以在子类方法中通过super.run()形式调用父类的run()方法,其中super.run()不必放在第一行语句,因此此时父类对象已经构造完毕,先调用父类的run()方法还是先调用子类的run()方法是根据程序的逻辑决定的。
16. 在定义一个类的时候,如果没有显式指定该类的父类,那么该类就会继承于java.lang.Object类(JDK提供的一个类,Object类是Java中所有类的直接或间接父类)。
17. 多态(Polymorphism):我们说子类就是父类(玫瑰是花,男人是人),因此多态的意思就是:父类型的引用可以指向子类的对象。
分享到:
评论

相关推荐

    收集的电子书 Java SE Lesson 2

    在标题“收集的电子书 Java SE Lesson 2”中,我们可以识别出本文档是一本关于Java SE(Standard Edition,标准版)的教程,具体为第二课的内容。Java SE是Java编程语言的核心平台,通常用于开发桌面应用程序、...

    收集的电子书 Java SE Lesson 5

    1. Java中常量的命名规则:在Java中定义常量时,推荐所有字母大写,多个单词之间使用下划线分隔。例如,定义一个公共静态最终常量AGE_OF_PERSON,其值为20。常量名AGE_OF_PERSON即是按照这一规则命名的。 2. final...

    北京圣思园Java培训教学视频 Java.SE.Lesson.2_code.rar

    综上所述,"北京圣思园Java培训教学视频 Java.SE.Lesson.2_code.rar"涵盖了Java SE的基础知识,包括面向对象编程、类与对象、基础语法、文件操作、集合框架以及异常处理等内容。配合张龙老师的讲解和配套源代码,...

    北京圣思园Java培训教学视频]Java.SE.Lesson.1_code.rar

    【标题】"北京圣思园Java培训教学视频]Java.SE.Lesson.1_code.rar" 提供的是一个关于Java Standard Edition(Java.SE)的初级教学资源,由北京圣思园教育机构制作。这个压缩包内含的主要是编程源代码,旨在帮助初学...

    java-北京圣思园张龙概念总结

    1. **JAVA SE Lesson 1.pdf** - 这一课可能主要介绍了Java语言的基础知识,包括Java的历史背景、为什么选择Java、Java开发环境的搭建(如JDK安装与配置)以及编写第一个Java程序——"Hello, World!"。此外,可能还...

    [北京圣思园Java培训教学视频]Java.SE.Lesson.4_code.rar

    【Java.SE.Lesson.4_code.rar】这个压缩包文件包含了北京圣思园Java培训课程的第四课时的源代码,主要关注的是Java Standard Edition(Java SE)的相关编程知识。Java SE是Java平台的核心,用于开发和运行桌面应用...

    [北京圣思园Java培训教学视频]Java.SE.Lesson.5_code.rar

    【Java.SE.Lesson.5_code.rar】这个压缩包文件显然包含了北京圣思园Java培训课程中的第五课时的源代码。这通常意味着我们将深入到Java编程语言的核心概念中,特别是那些在Java Standard Edition(Java SE)环境下的...

    [北京圣思园Java培训教学视频]Java.SE.Lesson.3_code.rar

    【Java.SE.Lesson.3_code.rar】是一个与Java标准版(Java SE)相关的教学资源压缩包,由北京圣思园教育机构提供。这个压缩文件包含了Java编程语言的基础知识,特别是第三课的代码示例,旨在帮助学员深入理解和实践...

    java学习笔记

    在【压缩包子文件的文件名称列表】中,我们看到一个具体的章节:“[北京圣思园Java培训教学视频]Java.SE.Lesson.10_code”。这可能代表了一个课程的第十课,重点是“Java Standard Edition(Java SE)”的相关代码...

    《java学习》-Java学习过程中笔记的配套代码.zip

    8. **lesson-code**:这个名字暗示了这是一系列课程的代码示例,可能按照学习进度,逐步覆盖了从基础语法到高级特性的Java编程内容。 9. **framework**:可能包含了各种Java框架的使用示例,如Spring Framework、...

    张龙老师JAVASE第12.13源码.rar

    1. "[北京圣思园]Java.SE.Lesson.12_code.rar":这是第12课的源代码,由北京圣思园提供,一个可能的教育机构或者在线学习平台。"Lesson.12_code"表示这部分内容专注于讲解和实践Java SE的第12章内容,可能涵盖类、...

    Java_lesson

    Java_lesson是一个关于Java编程的学习资源,可能是某个课程或教程的资料包,包含Java_lesson-master这个主目录,里面可能有源代码、笔记、练习题等学习材料。 Java的核心特性包括: 1. 面向对象:Java支持类、接口...

    JavaSE02-lesson27

    【JavaSE02-lesson27】这个主题涵盖了Java标准版(JavaSE)的第二部分,第27个课程的学习内容。在这个阶段的学习中,我们深入探讨了Java编程语言的核心特性,尤其是与数据库交互、文件操作、面向对象设计以及单例...

    张龙老师JAVASE视频源源码11-完.rar

    这个压缩包文件“张龙老师JAVASE视频源源码11-完.rar”包含了由知名讲师张龙老师主讲的一系列...每个子文件夹名如"Java.SE.Lesson.15_code.rar"代表一个课程的代码实例,这将帮助学习者逐步构建自己的Java编程能力。

    张龙老师 javaSE课程代码

    这套由张龙老师提供的Java SE课程代码,包含了从基础到进阶的全方位学习材料,涵盖了Java编程的多个重要知识点。以下是针对这些课程代码中的关键内容进行的详细解析。 1. **基础语法与数据类型**:Java语言的基础...

    50001-2020-lesson2studentsolution-FolkLoreee:50001-2020-lesson2studentsolution-FolkLoreee由GitHub Classroom创建

    学习Java可以涵盖许多主题,包括基本语法、面向对象编程概念(如封装、继承和多态)、异常处理、集合框架、输入/输出(I/O)系统、网络编程、多线程以及Java Standard Edition(Java SE)、Java Enterprise Edition...

    J2Se第三章全知识回顾

    例如,在描述中提到的`Lesson1`类,如果它包含至少一个抽象方法,那么该类必须声明为抽象类。如果一个类继承了抽象类但没有完全实现所有抽象方法,那么这个子类也必须是抽象类,否则编译器会报错。同样,如果一个类...

    oracle-lamba-lesson-one-dev

    Oracle大规模开放在线课程聚焦于Java SE 8中的一个重要特性——Lambda表达式,这是现代Java编程的一个核心元素。在"Oracle-lambda-lesson-one-dev"这个课程中,开发者将深入理解如何利用Lambda表达式来简化代码,...

    oracle-lamba-lesson-three-dev

    在本课程"Oracle大规模开放在线课程:Java SE 8 Lambda和Streams的第3课"中,我们将深入探讨Java编程中的一个重要革新——Lambda表达式。Lambda表达式是Java 8引入的一项核心特性,它极大地简化了函数式编程,使得...

    javaFx script

    - **安装指南**:介绍如何下载和安装Java SE与JavaFX开发软件。 - **开发环境选择**:提供关于选择适合自己的开发环境的建议。 - **Lesson 2: 编写脚本** - **编译源代码**:指导如何编译JavaFX Script源代码。 ...

Global site tag (gtag.js) - Google Analytics