Java 对来自其他类的方法的操作
Java中Vector类的contains()方法是否可以从另一个类进行操作(而不扩展Vector类) 假设我们有:Java 对来自其他类的方法的操作,java,vector,Java,Vector,Java中Vector类的contains()方法是否可以从另一个类进行操作(而不扩展Vector类) 假设我们有: class AuxType { String name; int type; AuxType(String name, int type) { this.name = name; this.type = type; } } class Main { void aMethod() { Vec
class AuxType {
String name;
int type;
AuxType(String name, int type) {
this.name = name;
this.type = type;
}
}
class Main {
void aMethod() {
Vector<AuxType> v = new Vector<AuxType>();
v.add(new AuxType("a", 1));
v.add(new AuxType("b", 2));
v.add(new AuxType("c", 3));
for (int i = 0; i < v.size(); i++) {
if (v.get(i).type == 2) {
System.out.println("Found it!");
}
}
}
}
是一种可以更改contains()工作方式的方法(在AuxType类中或在Main的aMethod()函数中)
编辑:不是重复的
我不是要从类中调用方法,而是要在不扩展该类的情况下对其进行更改。您需要的是调用,不,它在Java中不可用 在Java中,这个问题是通过使用继承来解决的(虽然有点冗长,但它确实很有意义) 理论上,它没有直接定义一个新的类,但是对于这个任务来说,它真的很复杂和过度
只需扩展该类或定义一个实用方法。您的问题是,您是否可以使用另一个类中的方法,而无需(a)扩展该类,(b)编写该类的实例,或(c)使用某种令人发指的字节码操作?不,我不是在问从类调用方法,而是在不扩展该类的情况下更改方法。
if (v.contains(2)) {
//
}