类的继承(关键字:extends),顾名思义,是子类继承父类的所有属性和方法。对于属性与方法有分为默认的、受保护的(protected)、公有(public)的和私有(private)的,而子类能调用的方法却不是父类所有的方法与属性。当子类与父类在同一个包内时,默认的、公有的、受保护的能被子类极其对象调用。而当子类与父类不在同一个包时,如果创建的对象不在子类或者父类中只有公有的能调用,而在子类的{}中可调用的属性和方法只有公有的和受保护的。
而在类的继承里面,略显重要的就是方法的重写了。方法的重写,其就是将父类中的方法重新构造一遍,但其前提就是这个方法的类名、返回值数据类型、参数必须和父类一样。对于方法重写实现以后,其调用情况也很简单,先检查子类中是否有这个方法,若没有,再检查父类。
接下来就是自动转型了,当然,这是在有类的继承关系下才能用的。一般情况是:在一个类中的方法中引入父类的形参,然后调用这个类的这个方法时,将子类作为实参传递给实参。这样,就实现了自动转换。其优点必然是减少代码量。
接下来,举一个例子:一个人去玩电子游戏,而游戏有很多种,而很多种游戏又有不同的操作方式。在这个例子中,一个人是由一个people类所创造的,而people类中包含一个玩游戏的方法,而游戏也是一个类(父类),其子类则有体感游戏、街机游戏等等。而对于游戏类(父类),其拥有一个方法,就是用键盘操作,而它的子类体感游戏(用感应器来操纵)、街机游戏(用手柄操作)则要通过方法重写来实现不同的操作方法。这样一个简单的程序就包含了类的继承、类的重写、自动转换。下面是代码:
package 玩游戏; public class people_play_games { public static void main(String[] args){ people dou=new people(); dou.setName("逗比"); Tggame wii=new Tggame("wii体验游戏"); wii.setName("wii体验游戏"); dou.play_games(wii); Jjgame xbw=new Jjgame("小霸王游戏"); dou.play_games(xbw); } } public class people { //定义人的名字属性极其调用方法 private String name; public void setName(String name){ this.name=name; } public String getName(){ return name; } //玩游戏的方法 public void play_games(games game){ System.out.println(this.name+"正在玩"+game.getName()); game.caozuo(); } } public class games { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } //构造方法 public games(String n){ name=n; } public games(){} //游戏操作方式的方法 public void caozuo(){ System.out.println("欢迎进入游戏,请使用键盘控制!"); } } //体感游戏(子类) public class Tggame extends games { public Tggame(String name){ super(name); } // public Tggame(){} //体感游戏的操作方式的方法重写 public void caozuo(){ System.out.println("欢迎进入游戏,请使用体感器控制!"); } } //街机游戏(子类) public class Jjgame extends games{ public Jjgame(String name){ super(name); } //街机游戏的操作方式的方法重写 public void caozuo(){ System.out.println("欢迎进入游戏,请使用手柄控制!"); } }
相关推荐
在Java编程语言中,类继承是面向对象设计的一个核心特性,它允许我们创建一个新类(子类)作为现有类(父类)的扩展。当我们谈论“Java类继承初始化顺序”时,涉及到的关键知识点包括构造器、成员变量的初始化、...
在Java编程语言中,类继承是面向对象编程的一个核心特性,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和方法,从而实现代码的重用和扩展。本资源包含了一份关于Java类继承的源码示例,非常适合...
1. **类的继承**:在Java中,继承是面向对象编程的重要特性,允许一个类(子类)继承另一个类(父类)的属性和方法。例如,我们可以创建一个`Music`类作为其他音乐相关类的基类。 2. **构造方法**:构造方法用于...
Java 中继承与多态的题目 本资源摘要信息是关于 Java 中继承和多态的题目,涵盖了面向对象编程的基本概念和继承机制的应用。 继承的概念 继承是面向对象编程的一种机制,允许一个类(子类)继承另一个类(父类)...
说明: 这是一个包含两个类的Java程序代码示例,Person类表示一个人的基本信息,包括姓名、年龄和爱好列表;Student类表示一个学生对象,继承自Person类,并添加了学生ID和专业名称的信息。主程序入口Main类中创建了两...
这个例子展示了Java继承的核心概念,包括: 1. 使用`extends`关键字创建子类。 2. 访问和覆盖父类的方法。 3. 添加子类特有的方法。 4. 多态性的应用。 通过学习这个实例,开发者能够更好地理解和运用Java的继承...
Java类继承关系中的初始化顺序实例详解 Java类继承关系中的初始化顺序是Java编程语言中的一個重要概念。该概念关系到类的初始化顺序,静态成员变量的初始化顺序,普通成员变量的初始化顺序等。在本文中,我们将详细...
在Java编程语言中,类的继承是面向对象编程的一个核心概念,它允许我们创建新的类(子类)基于已存在的类(父类或超类)。继承提供了代码的复用性,使得子类可以共享父类的属性和方法,同时还可以添加自己的特定功能...
在这个特定的程序中,我们看到了一个关于Java继承的实例,它演示了子类对象初始化时涉及的各个步骤,包括构造方法、初始化值、父类构造方法以及父类的初始化值。 首先,我们有一个名为`Parent`的父类,它有两个实例...
Java 类继承实验报告 本实验报告的主要目的是掌握 Java 中的类定义、对象创建和使用、类继承的概念,以及派生类的定义。实验中,我们将定义一个名为 MyRectangle 的类,代表矩形,并派生出一个名为 MyCuboid 的子类...
java类和对象继承多态性 java类和对象继承多态性是java语言中的一种基本机制,它允许开发者创建一个新的类,并继承已有的类的属性和行为。这种机制可以提高代码的复用性和维护性。 继承是java语言中的一种机制,...
Java 类的继承是其面向对象特性中的核心概念之一,它为代码重用和构建复杂的软件结构提供了基础。在 Java 中,一个类可以扩展另一个类的功能,这个被扩展的类被称为父类(或超类),而扩展的类则称为子类(或派生类...
在这个名为“李兴华java继承的应用”的主题中,我们将深入探讨Java类继承的概念、语法以及其在实际编程中的应用。 1. **类的继承概念** 在Java中,类的继承是通过使用关键字`extends`来实现的。子类可以获取父类的...
在Java编程语言中,类的继承是面向对象编程的一个核心概念。这个实例是关于如何在超市购物场景下应用继承机制的。在这个系统中,我们有以下几个关键类:`ShoppingCar`(购物车)、`Database`(数据库)、`McBean`...
了解这些概念后,我们可以看到`GenericClass.java`文件可能包含了关于如何创建和使用继承泛型类的实际代码示例。而`Java.jpg`可能是用于辅助解释的图像,比如类结构图或代码截图。在实际学习过程中,结合代码和图像...
JavaIO类InputStream/OutputStream继承关系图,使您对IO类一目了然
Java中的类与继承是面向对象编程(Object-Oriented Programming, OOP)的核心概念,它们在构建复杂的软件系统中起到至关重要的作用。面向对象编程是一种编程范式,它基于对象和类的概念,通过继承、封装和多态等特性...
Java继承是面向对象编程(OOP)的一种机制,允许一个类继承另一个类的成员变量和成员方法。通过继承,可以实现代码的重用和扩展。 在Java中,继承是通过使用关键字`extends`来实现的。例如,`class B extends A`...
在Java编程语言中,`extends`关键字用于实现类的继承机制。类的继承是面向对象编程的一个核心特性,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的复用和扩展。下面将详细探讨`extends`...
Java 类和继承是面向对象编程的核心概念,它们构成了Java程序设计的基础。在这个代码集中,我们很显然会看到一系列关于如何创建和使用Java类以及实现继承的示例代码。以下是对这些概念的详细解释: 1. **Java 类**...