< prev index next >
src/hotspot/share/oops/instanceKlass.cpp
Print this page
rev 55090 : secret-sfac
*** 1432,1442 ****
static int call_class_initializer_counter = 0; // for debugging
Method* InstanceKlass::class_initializer() const {
Method* clinit = find_method(
vmSymbols::class_initializer_name(), vmSymbols::void_method_signature());
! if (clinit != NULL && clinit->has_valid_initializer_flags()) {
return clinit;
}
return NULL;
}
--- 1432,1442 ----
static int call_class_initializer_counter = 0; // for debugging
Method* InstanceKlass::class_initializer() const {
Method* clinit = find_method(
vmSymbols::class_initializer_name(), vmSymbols::void_method_signature());
! if (clinit != NULL && clinit->is_class_initializer()) {
return clinit;
}
return NULL;
}
*** 1911,1920 ****
--- 1911,1923 ----
find_static,
private_mode);
if (method != NULL) {
return method;
}
+ if (name == vmSymbols::object_initializer_name()) {
+ break; // <init> is never inherited, not even as a static factory
+ }
klass = klass->super();
overpass_local_mode = skip_overpass; // Always ignore overpass methods in superclasses
}
return NULL;
}
< prev index next >