第二周总结1

preview
需积分: 0 0 下载量 102 浏览量 更新于2022-08-08 收藏 19KB DOCX 举报
在编程领域,面向对象编程是核心概念之一,Java 作为一款强大的面向对象语言,其特性在实际开发中扮演着重要角色。本总结将探讨第二周学习的几个关键知识点:对象的上转型对象、final 和 static 关键字、方法的重载和重写,以及单例设计模式。 对象的上转型对象是 Java 多态性的一种体现。它允许父类引用指向子类对象,从而可以调用子类重写的方法。例如,若父类 `Animal` 有一个 `sound()` 方法,子类 `Dog` 重写了该方法,那么通过父类引用调用 `sound()` 会执行 `Dog` 类的实现。但若子类有特有的方法,如 `bark()`,父类引用无法直接调用,此时需将父类引用向下转型为子类类型,才能访问这些特有方法。 接着,final 和 static 关键字在 Java 中有特定用途。final 修饰的变量是常量,一旦初始化后就不能再次赋值。final 修饰的方法不能被子类重写,而 final 类不能被继承。另一方面,static 关键字用于声明类级别的成员,它们在类加载时初始化,并可通过类名直接访问。static 还可修饰代码块,这类代码块在类加载时执行一次。 方法的重载(overload)和重写(override)是多态性的两个方面。重载发生在同一类内,通过不同的参数列表区分相同名称的方法。而重写发生在继承关系中,子类需要保持与父类被重写方法的返回类型、方法名和参数列表完全一致,但访问修饰符不能更低。 单例设计模式是一种限制类实例化次数的设计模式,通常用于节约资源,如内存和 CPU 占用。Java 中常见的单例实现有懒汉式和饿汉式。懒汉式在首次调用时才创建实例,饿汉式则在类加载时即创建实例。两种方式都通过使构造方法私有化和提供公共的静态方法来确保对单个实例的访问。 接下来,抽象类和抽象方法是面向对象的另一核心概念。抽象类可以包含抽象方法(无具体实现),但抽象类不能实例化。子类继承抽象类必须实现所有抽象方法,否则子类也必须声明为抽象类。接口是另一种定义规范的方式,其中的属性默认为常量,方法默认为抽象方法。接口可以继承其他接口,一个类可以实现多个接口,但只能继承一个父类。 异常处理是 Java 编程中的重要环节。异常类基于 `Throwable`,分为 `Error` 和 `Exception`。Exception 又分为编译期异常(CheckedException)和运行时异常(RuntimeException)。常见的异常类如 `ClassNotFoundException`、`FileNotFoundException` 是编译期异常,需要在方法签名中声明或捕获;而 `ArrayIndexOutOfBoundsException` 是运行时异常,不强制要求捕获。 总结起来,Java 中的这些概念和机制对于理解和编写高效、可靠的代码至关重要。理解并熟练应用这些知识点,可以提升编程效率,确保代码的可维护性和扩展性。