目录
构造方法
无参构造
有参构造
注意
类的继承
方法重写、重载
重写
重载
首页 Java java教程 如何利用JAVA中的继承、构造方法以及重写和重载方法?

如何利用JAVA中的继承、构造方法以及重写和重载方法?

Apr 23, 2023 pm 02:58 PM
java

JAVA继承、构造方法、重写和重载方法怎么用


构造方法

类的构造方法是特殊的方法,此方法名称必须和类名一致,构造不能有返回值 不使用void,不能直接调用,在类对象实例化时自动调用,new 的时候可以调用。一般构造方法用于类对象实例化时的初始化。如果一个类没有编写构造方法,系统自动给此类编译时添加一个无参构造方法。如果声明类编写了构造方法,系统不再添加无参构造方法,建议编写完构造方法时,最好编写一个无参构造方法。

无参构造

说白了就是没有参数的构造方法
概念看不懂举个例子就清晰了。
声明一个类A

public class A {
    }
登录后复制

在类A中创建一个构造方法A(),并且打印出一句话
构造方法必须和类名一样

public class A {
    public A(){
        System.out.println("构造方法A()");
    }}
登录后复制

新建一个测试类,并在类中nuw一个A类的对象

public class Test {
    public static void main(String[] args) {
        A a = new A();
    }}
登录后复制

执行main方法试试看

JAVA继承、构造方法、重写和重载方法怎么用

构造方法相当于在new对象是自动使用的方法

有参构造

有参构造就是有参数的构造方法
在类A中声明一个有参数的构造方法,传入两个String类型的参数,a和b

public class A {
    public A() {
    }

    public A(String a, String b) {
        System.out.println(a + b);
    }}
登录后复制

在测试类中new一个对象a时传入参数

public class Test {
    public static void main(String[] args) {
        A a = new A("aaa", "bbb");
    }}
登录后复制

执行main方法
JAVA继承、构造方法、重写和重载方法怎么用

注意

没有构造方法的时候,类中隐藏了一个无参构造。但是创建一个有参构造,隐藏的无参构造就会消失。那么以后new对象就只能带参数了。所以在建有参构造时一定要创建一个无参构造方法放那。

类的继承

java语言中,类class 是单继承,多实现接口。接口interface 是多继承的。

JAVA继承、构造方法、重写和重载方法怎么用

为什么要继承呢?因为子类想要在父类的基础上添加新功能。
子类继承父类可以继承父类中的方法和属性
下面举例分析:
父类是人,子类是老司机。
人的特征有:两只手,两只眼,两只脚,会吃会喝
老司机继承了人类的特征,并且多出了自己会开车这个功能。

代码如下:

这是一个人 类,具有以下属性和功能。

public class Ren {
    public final String shou = "两只手";
    public final String jiao = "两只脚";
    public final String yan = "两只眼";

    public void chi() {
        System.out.println("会吃");
    }

    public void he() {
        System.out.println("会喝");
    }}
登录后复制

这是老司机类,继承了人类。并且多了个会开车的功能

public class Siji extends Ren {
    public void kai() {
        System.out.println("会开车");
    }}
登录后复制

测试:创建老司机对象输出属性并调用方法。

public class Test {
    public static void main(String[] args) {
        Siji b = new Siji();
        System.out.println(b.jiao);
        System.out.println(b.shou);
        System.out.println(b.yan);
        b.chi();
        b.he();
        b.kai();
    }}
登录后复制

JAVA继承、构造方法、重写和重载方法怎么用

方法重写、重载

重写 覆盖:方法名,返回类型,形参都一样。有此种情况的,必须为继承关系。
重载:方法名一样,返回类型,形参个数,类型不样的方法,不一定必须是继承关系,同一个类中都可以,比如 构造方法重载

重写

因为子类不满意父类的方法所以想把它改一下,这就是子类重写父类的方法。
比如人会吃会喝,但是老司机不喜欢它会吃这个功能,想把它改一下,改成会吃屎。

代码如下:

老司机重写人类的chi()方法
方法名一定要一样

public class Siji extends Ren {
    public void kai() {
        System.out.println("会开车");
    }

    public void chi() {
        System.out.println("会吃屎");
    }}
登录后复制

现在重写运行测试类
JAVA继承、构造方法、重写和重载方法怎么用

重载

有参构造和无参构造就是方法重载,一个类中有两个名字一样的方法,但是他们的返回值类型和参数类型,参数个数不一样。
两个方法的返回值类型和参数类型,参数个数,只要有一个不一样。但是他们方法名一样,那么两个方法就重载。

以上是如何利用JAVA中的继承、构造方法以及重写和重载方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Java 中的平方根 Java 中的平方根 Aug 30, 2024 pm 04:26 PM

Java 中的平方根指南。下面我们分别通过例子和代码实现来讨论平方根在Java中的工作原理。

Java 中的完美数 Java 中的完美数 Aug 30, 2024 pm 04:28 PM

Java 完美数指南。这里我们讨论定义,如何在 Java 中检查完美数?,示例和代码实现。

Java 中的随机数生成器 Java 中的随机数生成器 Aug 30, 2024 pm 04:27 PM

Java 随机数生成器指南。在这里,我们通过示例讨论 Java 中的函数,并通过示例讨论两个不同的生成器。

Java中的Weka Java中的Weka Aug 30, 2024 pm 04:28 PM

Java 版 Weka 指南。这里我们通过示例讨论简介、如何使用weka java、平台类型和优点。

Java 中的阿姆斯特朗数 Java 中的阿姆斯特朗数 Aug 30, 2024 pm 04:26 PM

Java 中的阿姆斯特朗数指南。这里我们讨论一下java中阿姆斯特朗数的介绍以及一些代码。

Java 中的史密斯数 Java 中的史密斯数 Aug 30, 2024 pm 04:28 PM

Java 史密斯数指南。这里我们讨论定义,如何在Java中检查史密斯号?带有代码实现的示例。

Java Spring 面试题 Java Spring 面试题 Aug 30, 2024 pm 04:29 PM

在本文中,我们保留了最常被问到的 Java Spring 面试问题及其详细答案。这样你就可以顺利通过面试。

突破或从Java 8流返回? 突破或从Java 8流返回? Feb 07, 2025 pm 12:09 PM

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

See all articles