Determine which JAR file a class is from

Yes. It works for all classes except classes loaded by bootstrap classloader. The other way to determine is: Class klass = String.class; URL location = klass.getResource(“https://stackoverflow.com/” + klass.getName().replace(‘.’, “https://stackoverflow.com/”) + “.class”); As notnoop pointed out klass.getResource() method returns the location of the class file itself. For example: jar:file:/jdk/jre/lib/rt.jar!/java/lang/String.class file:/projects/classes/pkg/MyClass$1.class The getProtectionDomain().getCodeSource().getLocation() method returns the location … Read more

Getting attributes of a class

Try the inspect module. getmembers and the various tests should be helpful. EDIT: For example, class MyClass(object): a=”12″ b = ’34’ def myfunc(self): return self.a >>> import inspect >>> inspect.getmembers(MyClass, lambda a:not(inspect.isroutine(a))) [(‘__class__’, type), (‘__dict__’, <dictproxy {‘__dict__’: <attribute ‘__dict__’ of ‘MyClass’ objects>, ‘__doc__’: None, ‘__module__’: ‘__main__’, ‘__weakref__’: <attribute ‘__weakref__’ of ‘MyClass’ objects>, ‘a’: ’34’, ‘b’: … Read more

Scala equivalent of Java java.lang.Class Object

According to “The Scala Type System”, val c = new C val clazz = c.getClass // method from java.lang.Object val clazz2 = classOf[C] // Scala method: classOf[C] ~ C.class val methods = clazz.getMethods // method from java.lang.Class<T> The classOf[T] method returns the runtime representation for a Scala type. It is analogous to the Java expression … Read more

IntelliJ IDEA jump from interface to implementing class in Java

Yes, On mac, it is Command + Option + B. You will need to move your cursor to the interface name before invoking the shortcut. I’m not sure what’s the shortcut in PC, for if you right click the interface name -> “Go To” -> “Implementations”… the shortcut is listed there. In Windows, it is … Read more

How do I get an object’s unqualified (short) class name?

You can do this with reflection. Specifically, you can use the ReflectionClass::getShortName method, which gets the name of the class without its namespace. First, you need to build a ReflectionClass instance, and then call the getShortName method of that instance: $reflect = new ReflectionClass($object); if ($reflect->getShortName() === ‘Name’) { // do this } However, I … Read more

What is the difference between Type and Class?

The following answer is from Gof book (Design Patterns) An object’s class defines how the object is implemented. The class defines object’s internal state and the implementation of its operations. In contrast, an object’s type only refers to its interface – a set of requests to which it can respond. An object can have many … Read more

Error inflating when extending a class

I think I figured out why this wasn’t working. I was only providing a constructor for the case of one parameter ‘context’ when I should have provided a constructor for the two parameter ‘Context, AttributeSet’ case. I also needed to give the constructor(s) public access. Here’s my fix: public class GhostSurfaceCameraView extends SurfaceView implements SurfaceHolder.Callback … Read more

What does .class mean in Java?

When you write .class after a class name, it references the class literal – java.lang.Class object that represents information about a given class. For example, if your class is Print, then Print.class is an object that represents the class Print on runtime. It is the same object that is returned by the getClass() method of … Read more