java - 错误:找不到符号,声明了对象,但看不到公共变量
问题描述
我得到了
systemB\Plumber.java:44: error: cannot find symbol
FilterOut.Connect(FilterWildPoints.pipe1);
^
symbol: variable pipe1
location: variable FilterWildPoints of type MiddleFilter
systemB\Plumber.java:56: error: cannot find symbol
FilterWildPoints.pipe1.start();
^
symbol: variable pipe1
location: variable FilterWildPoints of type MiddleFilter
2 errors
即使你,FilterWildPoints 也有一个公共成员变量 pipe1。
重要的想法是,让 Wild Points Filter 将流分成另外两个管道,并将其中一个管道连接到输出。
管道工.java:
package systemB;
public class Plumber
{
public static void main( String argv[])
{
SourceFilter FilterIn = new SourceFilter("./datasets/FlightData.dat");
MiddleFilter FilterTemperature = new MiddleFilterTemperature();
MiddleFilter FilterAltitude = new MiddleFilterAltitude();
MiddleFilter FilterWildPoints = new MiddleFilterWildPoints();
SinkFilter FilterOut = new SinkFilter("./OutputB.dat");
FilterOut.Connect(FilterWildPoints.pipe1);
FilterWildPoints.Connect(FilterAltitude);
FilterAltitude.Connect(FilterTemperature);
FilterTemperature.Connect(FilterIn);
FilterIn.start();
FilterTemperature.start();
FilterAltitude.start();
FilterWildPoints.pipe1.start();
FilterOut.start();
} // main
} // Plumber
MiddleFilterWildPoints.java:
package systemB;
import java.nio.ByteBuffer;
public class MiddleFilterWildPoints extends MiddleFilter
{
public MiddleFilter pipe1;
public MiddleFilter pipe2;
MiddleFilterWildPoints()
{
this.pipe1 = new MiddleFilter();
this.pipe2 = new MiddleFilter();
}
//...
} // MiddleFilter
我对java不是很熟悉,需要这个来分配,但我找不到错误。
解决方案
您已声明FilterWildPoints
为MiddleFilter
,它没有该 pipe1
字段。
相反,FilterWildPoints
使用以下类型声明MiddleFilterWildPoints
:
MiddleFilterWildPoints FilterWildPoints = new MiddleFilterWildPoints();
java 编译器只查看声明的类型。
最好遵循以小写字母开头的变量名的标准 java 命名约定。IE
MiddleFilterWildPoints filterWildPoints = new MiddleFilterWildPoints();
这样类名和变量名更容易区分。
推荐阅读
- javascript - 依赖于动态数组的 forEach 无法获取更新值,不可能吗?(JavaScript)
- excel - 将 Excel 工作表复制为图片,并将每个图像排列在最后一张下方
- matlab - Matlab UIDropDown项目的不同工具提示
- lstm - 批量训练降低了我的语言模型指标
- c# - 如何访问合并的 DLL 中的嵌入式资源?
- r - 条件`menuitem`的`tabitem`内容在Shiny中仅显示一次
- ios - 如何使用 SwiftUI 在没有 SceneDelegate 的情况下更改每个视图的 iOS 状态栏颜色
- python - 无法打印选定的选项值
- java - 如何更正此错误“backupimage.Backup_image 无法转换为 com.lowagie.text.pdf.PdfPageEvent”
- javascript - 如何根据 yml 文件中存在的配置从 node.js 中的特定 .js 文件打印日志 - npm winston