Is the Java type system sound?

Sophia Drossopoulou, Susan Eisenbach, Sarfraz Khurshid · Theory and Practice of Object Systems · 1999

A proof of the soundness of the Java type system is a first, necessary step towards demonstrating which Java programs won't compromise computer security. We consider a subset of Java describing primitive types, classes, inheritance, instance variables and methods, interfaces, shadowing, dynamic method binding, object creation, null, arrays, and exception throwing and handling. We argue that for this subset the type system is sound, by proving that program execution preserves the types, up to subclasses/subinterfaces. © 1999 John Wiley & Sons, Inc.

Read the paper · More papers on PaperTik