请作为一个java面向对象初学者根据文件给出具体代码
时间: 2024-09-13 07:12:00 浏览: 39
根据您提供的课堂要求,我们可以设计一个简单的Java程序来表示钻具组合(钻杆、钻铤、钻头)。下面是一个基础的对象导向编程示例:
首先定义三个类:`DrillPipe`, `HeavyDrillPipe`, 和 `Bit` 分别代表钻杆、钻铤与钻头。
```java
public class DrillPipe {
private String name;
public DrillPipe(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class HeavyDrillPipe {
private String name;
public HeavyDrillPipe(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class Bit {
private String name;
public Bit(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
```
然后创建一个 `DrillAssembly` 类来组装这些钻具:
```java
import java.util.ArrayList;
import java.util.List;
public class DrillAssembly {
private List<Object> components = new ArrayList<>();
public void addComponent(Object component){
components.add(component);
}
@Override
public String toString(){
StringBuilder assemblyString = new StringBuilder("钻具组合包括:");
for (Object obj : components) {
if(obj instanceof DrillPipe)
assemblyString.append("\n - 钻杆: ").append(((DrillPipe)obj).getName());
else if(obj instanceof HeavyDrillPipe)
assemblyString.append("\n - 钻铤: ").append(((HeavyDrillPipe)obj).getName());
else if(obj instanceof Bit)
assemblyString.append("\n - 钻头: ").append(((Bit)obj).getName());
}
return assemblyString.toString();
}
}
```
最后,在主函数中实例化并组合它们:
```java
public class Main {
public static void main(String[] args) {
// 创建实例
DrillPipe pipe = new DrillPipe("钢管");
HeavyDrillPipe heavyPipe = new HeavyDrillPipe("重管");
Bit bit = new Bit("金刚石钻头");
// 组装
DrillAssembly drillAssembly = new DrillAssembly();
drillAssembly.addComponent(pipe);
drillAssembly.addComponent(heavyPipe);
drillAssembly.addComponent(bit);
System.out.println(drillAssembly);
}
}
```
这个例子展示了如何使用类(class)来表示不同的钻具,并且用集合(List)的方式把它们组织在一起形成一个完整的钻具组合(`DrillAssembly`)。请注意这只是一个基本的示例,实际应用可能需要考虑更多的属性和方法来丰富每个类的功能。
阅读全文