首页 > 其他分享 >有两个篮子,分别为A 和 B,篮子A里装有鸡蛋,篮子B里装有苹果,请用面向对象的思想实现两个篮子里的物品交 换(请用代码实现)

有两个篮子,分别为A 和 B,篮子A里装有鸡蛋,篮子B里装有苹果,请用面向对象的思想实现两个篮子里的物品交 换(请用代码实现)

时间:2024-03-11 17:26:17浏览次数:16  
标签:Basket goods 装有 String 面向对象 篮子 public name

package com.huang.algorithm;

/**
 * 面向对象思想实现篮子物品交换
 */
public class Demo04 {
    public static void main(String[] args) {
        Basket basket1 = new Basket("篮子1");
        Basket basket2 = new Basket("篮子2");
        basket1.load("鸡蛋");
        basket2.load("苹果");

        basket1.change(basket2);
        basket1.show();
        basket2.show();

    }
}

class Basket {
    public String name;
    private Goods goods;

    public Basket(String name) {
        this.name = name;
        System.out.println(name + " 篮子被创建");
    }

    public void load(String name) {
        goods = new Goods(name);
        System.out.println(this.name + "装载了" + name + "物品");
    }

    public void change(Basket basket){
        System.out.println(this.name + " 和 " + basket.name + "中的物品发生了交换");
        String tmp = this.goods.getName();
        this.goods.setName(basket.goods.getName());
        basket.goods.setName(tmp);
    }

    public void show() {
        System.out.println(this.name + "中的物品是:" + this.goods.getName());
    }
}

class Goods {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Goods(String name) {
        this.name = name;
    }
}

标签:Basket,goods,装有,String,面向对象,篮子,public,name
From: https://www.cnblogs.com/ningl666/p/18066600

相关文章

  • 继承性#java#面向对象
    继承性子类(也称为派生类)继承父类(也称为基类),子类就获取到了父类中声明的所有属性和方法(构造方法不能继承,只能在子类构造方法第一行调用父类的构造方法)。但是由于封装性的影响,可能子类不能直接调用父类中的属性和方法(如父类中声明为private)。继承提高了代码的复用性子类继承父......
  • 多态性#java#面向对象
    多态性静态多态:也称为编译期间的多态,编译器在编译期间完成的,主要通过函数重载实现。编译器根据相同函数名的不同参数列表,可推断出要调用哪个函数。publicclassPerson{publicvoidsay(){System.out.println("我是第一个名为say的方法!");}publicvo......
  • 面向对象
    day07总结笔记01-面向对象介绍面向对象并非是一个技术,而是一种编程的思想这种思想可以指导我们以什么思路解决问题,以什么思路来组织代码问题:为什么要学习这种思想?因为这套思想,来源于生活,生活中解决问题,就是一系列的对象,在一起打交道,从而将问......
  • python面向对象(一)
    面向对象(ObjectOrientedProgram)在Python中,所有的数据(包括数字和字符串)实际都是对象,同一类型的对象都有相同的类型。我们可以使用type()函数来获取关于对象的类型信息。什么是类,什么是对象?在Python中,使用类来定义同一种类型的对象。类(class)是广义的数据类型,能够定义复......
  • java基础 韩顺平老师的 面向对象(基础) 自己记的部分笔记
    194,对象内存布局基本数据类型放在堆里面,字符串类型放在方法区。栈:一般存放基本数据类型(局部变量)堆:存放对象(Catcat,数组等)方法区:常量池(常量,比如字符串),类加载信息 196,属性注意细节1,属性可以是基本数据类型,也可以是引用类型(对象,数组)2,属性的定义语法同变量,示例:访问修饰符属......
  • Java面向对象之封装性
    封装性我要用洗衣机,只需按开关即可,无需了解洗衣机的内部结构。以上这句话可能大家在搜索学习封装性的时候可能都听过,可是这句话严重误导了我。可能是由于面向过程的学习太过深刻,我联想到了函数,函数不就是把洗衣服的过程全部“封装”起来了吗?我只需要调用函数方法就可以了呀,确......
  • 第六章 面向对象进阶
    一,分包思想1、分包思想概述(理解)如果将所有的类文件都放在同一个包下,不利于管理和后期维护,所以,对于不同功能的类文件,可以放在不同的包下进行管理2、包的概述(记忆)包本质上就是文件夹创建包多级包之间使用"."进行分割多级包的定义规范:公司的网站地址翻转(去掉w......
  • Java面向对象
    面向过程&面向对象面向过程:步骤简单清晰,第一步->第二步->....面向过程适合处理一些较为简单的问题面向对象:分类的思维模式面向对象适合处理复杂的问题对于描述复杂的事物,使用面向对象的思维去宏观上把握、整体上分析,使用面向过程的思维去处理围观操作什么是面向......
  • 9.Python3 面向对象
    Python3面向对象1.类定义Python中定义一个类使用class关键字实现,其基本语法格式如下:classClassName:<statement-1>...<statement-N>类实例化后,可以使用其属性,创建一个类之后,可以通过类名访问其属性。无论是属性还是方法,对于类来说,它们都不是......
  • C# 面向对象
    .NETFramework是一个平台,它类似于Jave的虚拟机,.NET程序是运行在.NETFramwork之上的。.NET框架结构核心包括:.NET基础类库(BaseClassLibrary)和通用语言开发环境(CommonLanguageRuntime).NET基础库由“命名空间(Namespace)”和“类(Class)”组成。4.C#语言的特点:语法简洁(C#源自......