JavaSE教程
Java基础
Java简介
搭建Java开发环境
第一个Java程序
数据类型和变量
运算符和表达式
控制流程语句
数组和字符串
Java方法和方法调用
Java面向对象编程
Java类和对象
Java继承
Java封装
Java多态
Java异常处理
Java集合框架
Java高级特性
Java泛型
Java注解
Java文件I/O和NIO
Java多线程编程
Java网络编程
Java图形用户界面
Java应用开发
Java数据库连接(JDBC)
Java Web应用
-
+
首页
Java继承
### 继承的概念 在Java中,继承是一种面向对象的概念,它允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的属性和方法。继承支持代码的重用,并且可以创建出层次结构。 **示例代码**:一个简单的继承示例 ```java // 父类 class Animal { void eat() { System.out.println("This animal eats food."); } } // 子类 class Dog extends Animal { void eat() { System.out.println("The dog eats bones."); } } public class Main { public static void main(String[] args) { Dog myDog = new Dog(); myDog.eat(); // 输出:The dog eats bones. } } ``` 在这个例子中,`Dog`类继承了`Animal`类,并且重写了`eat`方法。 ### 访问修饰符 Java中的访问修饰符决定了类、接口、方法和变量的可见性。对于继承来说,最关键的访问修饰符是`private`、`default`(没有修饰符)、`protected`和`public`。 - **private**:仅在定义它的类中可见。 - **default**(包访问权限):在同一个包中的类可见。 - **protected**:在同一个包中的类以及不同包中继承它的类可见。 - **public**:对所有类都可见。 ### 方法重写 方法重写(Method Overriding)是指子类中定义一个与父类中具有相同名称、参数列表的方法。这是实现多态的一种方式。 **方法重写的规则**: 1. 方法名、参数列表和返回类型必须相同。 2. 子类方法的访问权限必须大于或等于父类方法的访问权限。 3. 子类方法不能抛出新的检查异常或比父类方法声明的更广泛的检查异常。 4. `private`、`static`、`final`修饰的方法不能被重写。 **示例代码**:方法重写 ```java class Vehicle { void start() { System.out.println("Vehicle is starting."); } } class Car extends Vehicle { @Override void start() { System.out.println("Car is starting with engine."); } } public class Main { public static void main(String[] args) { Car myCar = new Car(); myCar.start(); // 输出:Car is starting with engine. } } ``` 在这个例子中,`Car`类重写了`Vehicle`类的`start`方法,提供了更具体的实现。注意`@Override`注解,它不是必需的,但它可以帮助编译器检查是否正确地重写了方法。
wwbang
2024年12月25日 16:31
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码