java - 我的返回语句不使用用户插入的数据
问题描述
我有第一个方法,它应该返回引用实例变量的书名。这工作正常,但它让我选择插入的标题,而不是立即使用用户输入的标题,有没有办法让它返回标题,而无需我通过在下拉列表中选择标题的额外步骤?
我有第二种方法应该通过找到(BookChapters)和(BookMark)之间的差异来返回剩余的章节,但是当我运行它时它不会返回差异,并且像第一种方法一样它让我选择剩余的章节在下拉列表中。
这是一个介绍性的编程课程,我尝试查找有关返回数学语句的 java 文档,但我没有取得太多成就。
private String BookTitle;
private int BookChapters;
private int BookMark;
public int RemainingChapters;
// 实例变量 //
public Textbook()
{
// initialise instance variables
BookTitle = "Lord of the Flies";
BookChapters = 3;
BookMark = 0;
}
// 我的构造函数 //
public String getTitle(String BookTitle)
{
return BookTitle;
}
// 我第一个返回书名的方法 //
public int getRemainingChapters (int RemainingChapters)
{
return RemainingChapters = BookChapters - BookMark;
}
// 我返回剩余章节的第二种方法 //
这张图片应该可以帮助我解释我关于第一种方法的问题
解决方案
public String getTitle() {
return BookTitle; }
Getter 不应该接受参数,而是返回对象(类级别)变量。
也许您打算编写一个可以像这样实现的设置器:
public String getTitle(String BookTitle) {
this.BookTitle = BookTitle; }
this.BookTitle = 书名;可以解释为将对象 BookTitle 设置为函数参数 BookTitle。
同样,这个函数应该如下
public int getRemainingChapters ()
{
return (BookChapters - BookMark);
}
推荐阅读
- c# - 常量上的 NonSerialized 属性
- java - icepdf 不会在 JFrame 中的 linux 实例上呈现
- android - 如何在 LAN 中的 2 个设备之间传输现有的相机字节 [] 数据
- javascript - 尝试使用 JavaScript 中的变音符号使递归排列函数
- angular - 执行订阅部分之前显示的表单组错误
- javascript - 服务人员未激活
- bash - Bash 日期比较
- angular - Angular 将值绑定到指令参数
- javascript - 显示来自数据库表 laravel 的 highcharts 数据
- database - db:运行sql模式(包含多条语句)