Java面向对象程序设计复习:继承、包与访问控制
版权申诉
5星 · 超过95%的资源 90 浏览量
更新于2024-06-25
收藏 185KB PPTX 举报
"java期末复习第讲面向对象程序设计.pptx"
本讲主要涵盖了Java面向对象程序设计中的关键概念,包括包、继承以及访问控制。以下是这些知识点的详细解析:
1. **包(Package)**
- 包是Java中组织类的一种机制,它是由`.class`文件组成的集合,可以看作是类的容器,用于划分类名空间,避免命名冲突。
- 定义包的语法是`package pkg1[.pkg2[.pkg3…]];`,例如`package com.javaworld;`。包名通常采用反向域名形式,保持全局唯一性。
- 没有明确指定包的类将位于默认的无名包中。
- 包的物理结构对应于文件系统的目录结构,例如`package com.sun.java;`对应的目录应为`com\sun\java`(Windows系统)。
- 使用`import`语句可以引入包中的类,全量导入(如`import java.awt.*;`)方便但可能占用更多内存,推荐按需导入。
2. **访问控制**
- Java提供了四种访问权限:public、protected、default(包级私有)和private。private成员仅在定义它的类内部可访问,是封装的重要工具。
3. **继承(Inheritance)**
- 继承是面向对象编程的核心特性之一,允许创建一个新类(子类)从已有类(超类)派生,以便复用和扩展代码。
- 子类继承超类的属性和方法,可以增加自己的特性和重写超类的方法。
- Java中所有类都隐式或显式地继承自`Object`类。
- 继承有助于代码的组织和提高代码的复用性,通过多态性实现更灵活的设计。
4. **方法重载(Overloading)和方法重写(Overriding)**
- 方法重载是指在同一个类中可以有多个同名方法,但参数列表不同(参数数量、类型或顺序不同)。
- 方法重写发生在子类中,子类重新定义超类中的方法,保持相同的名称、返回类型和参数列表,但可能有不同的实现。
5. **类路径(CLASSPATH)**
- 类路径用于Java解释器查找`.class`文件的位置,编译时和运行时都需要设置。
- 编译时使用`javac -d CLASSPATH路径 Myclass.java`,运行时使用`java 包名.类名`来执行特定包下的类。
此外,还提到了几个常用的Java包:
- `java.lang`:包含基础类,如`String`、`Math`、`Integer`等。
- `java.awt`:提供GUI组件和事件处理。
- `java.applet`:支持Applet的类。
- `java.net`:网络通信相关的类。
- `java.io`:输入/输出流及相关类。
- `java.util`:包含各种实用工具类,如集合框架、日期时间等。
掌握这些基本概念对于理解和编写面向对象的Java程序至关重要。在实际编程中,合理使用包、继承和访问控制能够提高代码的可读性、可维护性和可扩展性。同时,正确理解和应用方法重载和重写是实现多态性的重要手段。
2023-05-29 上传
小虾仁芜湖
- 粉丝: 113
- 资源: 9354
最新资源
- rest-auth-proxy:基于Java的restful ldap-authentication微服务
- tkoopython:适用于Pythontkinter的面向对象的GUI演示的集合
- tApp:使用现代网络技术(HTML,CSS,JavaScript)构建tApp(TogaTech应用)的框架
- aabbtree-2.8.0-py2.py3-none-any.whl.zip
- acbm-predictor-senstivity-analysis:基于动物细胞的肉类(ACBM)成本预测模型的敏感性分析
- CI
- vetmanager-url-getter:通过诊所域名获取完整网址的简单包
- 西门子PLC写的超声波清洗机程序.rar
- Centric-Project:第12团队中心项目
- Python库 | django-mdeditor-widget-1.0.0.tar.gz
- Notes:使用美观的UI做笔记
- nutrition-calculator
- 行业分类-设备装置-一种造纸废水循环利用方法.zip
- tridium-eliwell-plc-webpage:Eliwell PLC的自定义网页
- gimli.units-feedstock:用于gimli.units的conda-smithy存储库
- btw-47.github.io