首页 > 编程语言 >Java中面向对象将引用数据类型作为参数类型

Java中面向对象将引用数据类型作为参数类型

时间:2024-09-26 21:44:48浏览次数:9  
标签:Java fun2 void 数据类型 class 面向对象 Student new public

当参数类型为类名,抽象类名,接口名的时候

1.当一个类名作为参数类型在一个方法的时候
class Student{
    public void fun1(){
        System.out.println("我是父亲");
    }
}
class StudentDemo1{
    public void fun2(Student student){  //当调用到这个方法时相当于:Student student =new Student()
        student.fun1();
    }
}

public class Demo1 {
    public static void main(String[] args) {
        StudentDemo1 student = new StudentDemo1(); //创建一个StudentDemo对象
        student.fun2(new Student());               //用student对象去调用该类里面的方法,但是里面的参数要传一个对象进去
    }
}
//其中调用fun2就相当于Student Student = new Student()

2.当一个抽象类名作为参数类型时:我们需要传入一个具体的子类的对象,并且该子类是继承了该抽象类

//当一个抽象类名作为参数类型的时候
abstract class Student1{
    public abstract void fun2();
}
class StudentZi extends Student1{
    public void fun2(){
        System.out.println("我是一个子类");
    }
}
class StudentDemo2{
    public void fun(Student1 student1){  //当调用到这时相当于:Student1 student1 =new StudentZi()
        student1.fun2();
    }
}
public class Demo1 {
    public static void main(String[] args) {
        StudentDemo2 studentDemo2 = new StudentDemo2(); //创建一个StudentDemo2对象
        studentDemo2.fun(new StudentZi()); //用该对象调用fun方法,其中传入具体子类继承父类的对象
    
    }
}

3.当接口名作为一个参数类型的时候:我们需要传入一个具体实现接口的类的对象

//当一个接口名作为参数类型的时候
interface Inter{
    public abstract void fun2();
}
class StudentInter implements Inter{
    public void fun2(){
        System.out.println("我是大富翁");
    }
}
class StudentDemo3{
    public void fun4(Inter inter){  //当调用这个方法时相当于:Inter inter=new StudentInter
        inter.fun2();
    }
}

public class Demo1 {
    public static void main(String[] args) {
     
        StudentDemo3 studentDemo3 = new StudentDemo3(); //创建一个视图studentDemo3对象
        studentDemo3.fun4(new StudentInter());//用该对象调用fun4方法,其中传入具体实现的类的对象
    }
}

标签:Java,fun2,void,数据类型,class,面向对象,Student,new,public
From: https://www.cnblogs.com/ndmtzwdx/p/18434485

相关文章

  • 理解 JavaScript 中的对象
    您是否遇到过需要在javascript代码中存储一组复杂信息的情况?例如,您需要将用户的数据存储在数据库中,例如姓名、年龄和地址。您将使用什么javascript框架来完成此任务?在本文中,我们将了解对象如何在此类任务中发挥作用,并了解javascript中这一重要数据集合的含义。跟我来吧!......
  • 理解 JavaScript 数组迭代方法
    我最近遇到一个面试问题,要求使用不同的方法来迭代javascript数组对象。提示最初看起来很简单,因为我应该提供一些示例代码片段。然而,这个问题引起了我的兴趣,所以我决定更深入地研究每种方法,不仅探索如何使用它们,而且探索何时以及为何选择一种方法而不是另一种方法。在本文中,我将......
  • 每个开发人员都应该掌握的 JavaScript 数组方法(第 1 部分)
    “能力越大,责任越大。”—本叔叔,蜘蛛侠(2002)就像蜘蛛侠必须掌握他新发现的能力一样,开发人员需要掌握javascript强大的数组方法才能高效、负责任地进行编码。让我们深入研究一些必须知道的数组方法!1.查找find()方法返回满足所提供的测试函数的第一个数组元素的值。ar......
  • 深入 JavaScript 世界:掌握 OOP、虚拟 DOM 等
    踏上激动人心的旅程,探索广阔而动态的javascript世界!getvm提供的免费编程学习资源集合涵盖了广泛的主题,从复杂的面向对象编程(oop)到创建自定义虚拟dom实现。无论您是经验丰富的开发人员还是好奇的初学者,这些教程都将为您提供提升javascript能力的知识和技能。?理......
  • 【Py/Java/C++三种语言OD独家2024E卷真题】20天拿下华为OD笔试之【哈希表】2024E-选修
    可上欧弟OJ系统练习华子OD、大厂真题绿色聊天软件戳oj1441了解算法冲刺训练(备注【CSDN】否则不通过)文章目录相关推荐阅读题目描述与示例题目描述输入输出示例一输入输出说明示例二输入输出说明解题思路代码pythonjavacpp时空复......
  • java使用webservice 调用天气预报接口
    市场上有许多免费的和付费的天气预报API,例如OpenWeatherMap、WeatherAPI、Weatherstack等。这里我们以OpenWeatherMap为例,因为它提供了广泛的天气数据和相对简单的API接口。访问OpenWeatherMap的官网(https://openweathermap.org/) ,注册一个账户,并创建一个API密钥(APIkey)。这个密钥将......
  • 【Py/Java/C++三种语言OD独家2024E卷真题】20天拿下华为OD笔试之【DFS/BFS】2024E-开
    可上欧弟OJ系统练习华子OD、大厂真题绿色聊天软件戳oj1441了解算法冲刺训练(备注【CSDN】否则不通过)文章目录相关推荐阅读题目描述与示例题目描述输入输出示例一输入输出说明示例二输入输出解题思路代码解法一:BFSpythonjavacpp......
  • 构建 JavaScript 代码:可读性和可维护性的最佳实践
    欢迎回到我们的javascript世界之旅!在这篇博文中,我们将深入探讨构建javascript代码的基本方面。正确的代码结构对于可读性、可维护性和协作至关重要。我们将介绍代码结构、语句、分号和注释。让我们开始吧!代码结构结构良好的javascript代码库易于阅读、理解和维护。以......
  • Java毕业设计-基于SSM框架的超市会员(积分)管理系统项目实战(附源码+论文)
    大家好!我是岛上程序猿,感谢您阅读本文,欢迎一键三连哦。......
  • 论JAVA 两种“对象比较接口“的区别
    前言总所周知,java对象的比较有三种方式 最简单的是可以调用equals().因为这个方法定义在Object类中,而我们的类都继承了Object类.所以我们自己定义的类都可以使用这个方法.除此以外还有两个比较接口,可以通过实现他们的某些方法比较我们的对象他们是 Comparable和Co......