- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为大学类(class)编写一个程序,用于管理库存,例如添加、删除和租赁 DVD 播放器、家具和电视机等元素。我的问题是,我想要获取对象的保存状态而不将对象作为参数传递到方法中以检索其状态。
ABCRentals.java
private List<Integer> idNumbers = new ArrayList<Integer>();
private List<Item> items = new ArrayList<Item>();
public String[] itemTypes2;
public boolean add(Item item)
{
if (items.size() >= 300)
return false;
else
{
idNumbers.add(idNumbers.size() + 1);
items.add(item);
return true;
// Code that adds item to itemTypes2 array (removed to avoid unnecessary code dump)
}
}
public String[] getItemArray() {
return itemTypes2;
}
DVDPlayer.java
public int getId(ABCRentals abc)
{
String[] itemArray = abc.getItemArray();
int id = Arrays.asList(itemArray).indexOf("DVDPlayer #" + Integer.toString(ID)) + 1;
return id;
}
驱动程序.java
public static void main(String[] args)
{
ABCRentals abc = new ABCRentals();
DVDPlayer item1 = new DVDPlayer();
boolean flag = abc.add(item1);
int id = item4.getId(abc);
System.out.println("Id: " + id);
}
基本上我的意思是,当我调用Driver
类中的getId()
方法时,我无法传入abc
对象作为参数以获得其状态,因为我的教授要求我具有某些方法签名,特别是 getId()
需要接受零参数。当实现 add()
方法并添加项目时,abc
对象的状态会发生变化。因此,如果我要在 getId()
方法中创建 ABCRentals
的新实例,它将具有空状态,因为对象中不会添加任何项目。有什么方法可以隐式检索 abc
对象而不将其作为参数传递吗?我上面的代码可以工作,但我的方法签名不能是这样的。
最佳答案
DVDPlayer.java
private ABCRentals mAbc;
public void init(ABCRentals abc){
mAbc = abc;
}
调用此 init 方法来初始化您的类,然后调用 getId 方法。
关于java - 如何在不作为方法参数传递的情况下访问对象的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58119619/
我的应用程序中有一个表单,我通过以下方式声明它: = form_with model: project, remote: true, method: :put do |f| = f.select
我试图在 React 中使用 Axios 设置一个简单的帖子表单设置,但由于某种原因它似乎没有作为帖子请求发送,所以 Django 一直抛出 405 错误。 这是调用 axios 并处理表单的 rea
我无法将 xdebug 作为 Zend 扩展加载,因为 php.ini 自动放入错误的术语。 phpinfo() 中的消息是 XDEBUG NOT LOADED AS ZEND EXTENSION 我
在下面的代码中,当使用以下语句时,我能够将字符串 'fullname' 的内容写入指定目录中的文本文件:System.IO.File.WriteAllText(路径, 全名);但是,如果我将字符串路径
这个问题已经有答案了: 已关闭12 年前。 Possible Duplicate: Problem of * in Command line argument 我编写了一个小型计算器的简单尝试,它可以
有没有办法捕获 html Canvas 的内容而不是像下面的示例中那样作为数据 url? Capture HTML Canvas as gif/jpg/png/pdf? 我想要这样做的原因是我想将 C
与 C# 中的代码约定相反,在 JML 中,代码约定只是在方法 header 中以注释形式使用的文本。那么,将它们作为注释公开不是更好吗?这样即使在编译时信息也会保留在 .class 的元数据中,与注
我正在学习 Express,并且根据文档我看到它包含一些与 Node.js 相同的功能。例如,request 和 response 据说与 Node 完全相同。 看这里: https://expres
我正在尝试使用 legendgrouptitle_text 在 python go.Scatter 上设置 legendgroup 标题,如 plotly doc 中所述: https://plotl
我正在尝试使用 pinax 开发网站。为了使用 djapian 为模型编制索引,我一直在尝试将 "manage.py index" 作为 cron 作业运行,但不断收到 pinax 错误。 “错误:没
我正在开发一个 Android 应用程序,它需要一个谷歌同步日历作为它的一部分。我无法使用 Intent 来显示 Android 日历 Activity 。它必须是应用程序的一部分。日历只占屏幕的一半
问题可能不是很具体,但我想知道如何使用 AngularJS + ASP.NET MVC 创建一个非真正的 SPA 应用程序。 我即将开始一个项目,AngularJS 非常适合前端:前端将有很多动态计算
我有一个功能可以在我的应用程序中显示即时通知,如果有人发送消息,我会向其他用户发送通知,就像您收到新消息一样。为此,我使用 Spring MVC + Stomp + WebSocket。 在我的本地/
我已经使用以下 build.gradle 文件(Gradle 版本 5.4.1)创建了一个 Spring Boot 应用程序: plugins { id 'org.springframewo
我有一个运行 Ubuntu 14.04 的 Digital Ocean Droplet (VPS)。我已经安装了s3cmd并且能够使用此命令成功运行同步: s3cmd sync --recursive
我目前使用 Sublime Text 2 进行 ColdFusion 编码。写这篇的时候 SELECT #createODBCDatetime(trim(arguments.foo))#
我定义了一个记录器实例如下: private static final Logger LOGGER = Logger.getLogger(Main.class.getName()); 我有一个要记录的
我正在尝试安装 Python 3 替代 python-mysql。我尝试使用推荐的 PyMySQL。但是在尝试迁移我的 Django 项目时,同样的错误仍然存在。 回溯: File "/home/
我正在尝试在 Ubuntu 12.04 上安装 Phusion Passenger。 当我尝试时: sudo passenger-install-apache2-module ...我明白了: sud
npm ERR! As of npm@5, the npm cache self-heals from corruption issues and data extracted from the ca
我是一名优秀的程序员,十分优秀!