下列哪个方法可用于创建一个可运行的类( ) A. public class X implements Runable{ public void run(){......} } B. public class X implements Thread{ public void run(){......} } C. public class X implements Thread{ public int run(){......} } D. public class X implements Runable{ protected void run(){......} }
时间: 2024-04-05 09:35:34 浏览: 110
正确的创建一个可运行的类的方法是 A. public class X implements Runnable{ public void run(){......} }。
在 Java 中,实现 Runnable 接口是创建可运行类的一种常见方式。在 Runnable 接口中,有一个 run() 方法,需要在其中编写具体的运行代码。因此,在 A 选项中,创建了一个名为 X 的类,实现了 Runnable 接口,并且实现了 run() 方法,可以在其中编写具体的运行逻辑。在实际使用中,可以通过创建线程对象,并将可运行类作为参数传递给线程对象的构造函数来执行该类中的 run() 方法。B 选项错误,因为 Thread 类没有实现 Runnable 接口,无法通过实现 Thread 类来创建可运行类。C 选项错误,因为 run() 方法的返回值必须是 void 类型,不能返回 int 类型。D 选项错误,因为 run() 方法必须是 public 访问修饰符,不能使用 protected 修饰符。
相关问题
下列类定义中,不正确的是 (2.0) A class A { .... } B class A extends y { .... } C static class A implements B, C { .... } D public class A extends JFrame { .... }
选项 C 中的类定义是不正确的。
在 Java 中,静态内部类是在外部类的作用域之内定义的,但是它可以独立于外部类实例化。选项 C 中定义的是一个静态内部类,但是它同时实现了接口 B 和 C,这是不合法的。在 Java 中,一个类只能直接继承一个类,但可以实现多个接口。正确的方式应该是:
```java
static class A implements B, C {
// 类的成员变量和方法
}
```
用java请设计并编写一个同时满足下列所有需求的代码。 (1)定义一个public接口,接口名为Shape; (2)定义返回值为double类型并且无输入参数的public抽象方法,其中方法名为getArea; (3)定义返回值为double类型并且无输入参数的public抽象方法,其中方法名为getPerimeter。 (4)定义一个public类Square,且该类实现了接口Shape; (5)在类Square中定义两个double类型的public成员变量,其中成员变量名为:width,height; (6)用带有两个形式参数的public构造方法对Square类中的成员变量进行初始化,其中形式参数名为: width,height; (7)在Square类中对getArea方法进行实现,返回面积,即width*height; (8)在Square类中对getPerimeter方法进行实现,返回周长,即2*(width+height)。 初始样例: 3 4 输出样例: (不考虑小数位数) area = 12.0 peri = 14.0
下面是Java代码实现:
```
public interface Shape {
public abstract double getArea();
public abstract double getPerimeter();
}
public class Square implements Shape {
public double width;
public double height;
public Square(double width, double height) {
this.width = width;
this.height = height;
}
@Override
public double getArea() {
return width * height;
}
@Override
public double getPerimeter() {
return 2 * (width + height);
}
}
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double width = scanner.nextDouble();
double height = scanner.nextDouble();
Square square = new Square(width, height);
System.out.println("area = " + square.getArea());
System.out.println("peri = " + square.getPerimeter());
}
}
```
阅读全文