Publication | Closed Access
Encapsulating objects with confined types
102
Citations
17
References
2001
Year
Unknown Venue
EngineeringEncapsulation (Computer Programming)Program AnalysisPolymorphism (Computer Science)Java ClassesFormal MethodsObject-oriented LanguagesSoftware EngineeringObject-oriented ProgrammingStatic CheckingComputer ScienceObject Encapulation PropertiesType SystemObject OrientationStatic Program AnalysisSoftware AnalysisData SecurityConfined Types
Object-oriented languages provide little support for encapsulating objects. Reference semantics allows objects to escape their defining scope. The pervasive aliasing that ensues remains a major source of software defects. This paper introduces Kacheck/J a tool for inferring object encapulation properties in large Java programs. Our goal is to develop practical tools to assist software engineers, thus we focus on simple and scalable techniques. Kacheck/J is able to infer confinement for Java classes. A class and its sublasses are confined if all of their instances are encapsulated in their defining package. This simple property can be used to identify accidental leaks of sensitive objects. The analysis is scalable and efficient; Kacheck/J is able t infer confinement on a corpus of 46,000 classes (115 MB) in 6 minutes
| Year | Citations | |
|---|---|---|
Page 1
Page 1