java - 用于在 Eclipse(Java 中)中测试构造函数和方法的 GUI 类似于 BlueJ?

标签 java eclipse bluej

我是 Java 编程新手,正在通过使用 BlueJ IDE 的 EdX 学习类(class)。我试图复制我在 Eclipse 中所做的一切,因为我知道它是专业程序员常用的 IDE。我对 BlueJ 中使用的某些功能有疑问,但在 Eclipse 中尚未弄清楚。

有没有一种方法可以像在 BlueJ 中一样在 Eclipse 中创建对象的测试实例?

enter image description here

屏幕截图 1 显示了此类可用的两个构造函数。我选择了突出显示的一个。

enter image description here

屏幕截图2是命名实例的对话框。

enter image description here

屏幕截图 3 是对话框菜单,其中包含该对象可用的各种方法。

那么有没有办法在 Eclipse 中做到这一点?我读过一些有关 JUnit 的内容,并打算学习使用它,但想知道 Eclipse 中是否有与简单 BlueJ 测试类似的功能。

这是 Car 类的代码:

import comp102x.IO; //External library available in many of the later demo programs from https://courses.edx.org/courses/course-v1:HKUSTx+COMP102.1x+2T2015/f792f3a2057040aa959e606d687e9bc4/

/**
* A class of Car objects that can move forward, backward and turn
*/
public class Car
{
        private int odometer = 0;           // An odometer reading initialized to 0
        private String owner = "NoName";    // Name of owner

    /**
     *   Default constructor for a Car object
     */
    public Car () {}  

    /**
     *   Constructor for a Car object with a new owner’s name
     *   @param   name                   name of owner
     */
    public Car(String name) {   // Constructor takes a name as argument
        owner = name;
    }

    /**
    *   moveCar moves a car forward or backward by dist units
    *   @param   dist     Moving distance
    */
    public void moveCar(int dist) { 
        odometer = odometer + Math.abs(dist);
        IO.outputln(owner + "'s car has moved " + dist + " units."); 
    }

    /**
    *   turnCar turns a car by a given degree
    *   @param   angle     Turn angle in degrees
    */
    public void turnCar(double angle) { 
        IO.outputln(owner + "'s car has turned " + angle + " degrees."); 
    }

    /**
    *   getOdometer gets the odometer reading of a car
    *   @return     The value of odometer
    */
    public int getOdometer() {
        return odometer;
    }

}

最佳答案

根据我使用 BlueJ 的经验,我可以告诉您,这对于初学者来说非常简单。最终用户可以很方便地进行快速实例化和快速测试等操作。

但是,在 Eclipse、NetBeans 或 IntelliJ 等 IDE 中,您无法获得这样的便利(图形方式)。这些 IDE 使开发企业级代码变得更加容易,因此,图形界面只会带来更多的障碍而不是帮助。

根据您的“测试”上下文,您有多种选择。

  • 如果您只想实例化一个实例并使用它,请使用 main 方法创建一个新类。从那里,手动实例化 Car 实例:

    public static void main(String[] args) {
        Car car = new Car();
        Car altCar = new Car("The Ride");
        // code that calls methods on each instance to follow
    }
    
  • 如果您想实际进行单元测试,那么 JUnit 是一个不错的选择。您必须将 JUnit 放在类路径上的某个位置 ( documentation for Eclipse exists )。

    public class CarTest {
    
        @Test
        public void testCar() {
            Car car = new Car();
            // put state into the car
            // assert expectations
        }
    }
    

关于java - 用于在 Eclipse(Java 中)中测试构造函数和方法的 GUI 类似于 BlueJ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29907506/

相关文章:

java - EclipseRCP获取类所在的pluginId

java - 在 Java 中加载 32 位或 64 位 JNI 库

Java通配符通用问题: Compiler assumes different types for same object

java - 如何在HistoricalMoment类中调用increment方法()?

Java - 如何在迭代期间引用上一个和下一个元素?

java - Android Speech to text API 从 onActivityResult 方法中获取变量值

java - 调理使用哪种方法

java - eclipse maven deploy war to nexus OSS Access denied Error code 401, Unauthorized

java - 如何将 JDBC jar 打包到扩展中?