[英]Using Lombok to generate “Getters”
我正在學習面向對象編程的入門課程。
我們當前的任務是創建“塔防”的版本,並為了幫助我們使用Junit和Lombok。 我們已經獲得了大量幫助GUI等的代碼,但是我認為並不是所有的代碼都必須了解問題所在,因為從字面上看,這是我們在分配工作中要做的第一件事。
package edu.chl.hajo.td.model;
import org.junit.Test;
import java.util.Arrays;
import java.util.List;
import static edu.chl.hajo.td.model.TowerDefence.TILE_SIZE;
import static org.junit.Assert.*;
/*
JUnit testing of model
*/
public class ModelTest {
@Test
public void testPath() throws Exception {
List<String> strPts = Arrays.asList(
"0,3", "3,3", "3,9", "8,9", "8,4", "12,4",
"12,12", "3,12", "3,17", "17,17",
"17,6", "20,6");
Path p = new Path(0, strPts, TILE_SIZE);
assertTrue(p.get(0) != null);
// etc.
}
// Add more tests as needed
}
因此,我得到的錯誤消息是“無法解析方法'get(int)'”。 這是我在“路徑”類中編寫的內容:
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
/*
* A path for creeps (waves) to follow
*/
public class Path {
@Getter
private final int id;
@Getter
private final int size;
@Getter
private final List<Point2D> points; //= null; // TODO
// TODO
public Path(int id, List list, int size) {
this.id = id;
this.points = list;
this.size = size;
}
}
但是,如果我正確理解“ Getters”,則@Getter僅創建諸如getId,getSize和getPoints之類的方法。 測試實際上試圖與get(0)做什么? 如果我們想從列表中獲取某些東西,我覺得這很有意義,但是在這里,我們試圖從路徑中獲取一些東西。
我希望其中一些對某人有意義。
我認為您應該實現Path
類,以便像在測試中那樣調用構造函數時,會為每個坐標創建一個Point2D
列表。 get(int i)
是您必須實現的一種從路徑返回該點的方法。
Lombok實現了簡單的getter(例如getId()
),但不一定是更復雜的get(int i)
方法,該方法從路徑返回特定點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.