1; Copyright (C) 2017 The Android Open Source Project 2; 3; Licensed under the Apache License, Version 2.0 (the "License"); 4; you may not use this file except in compliance with the License. 5; You may obtain a copy of the License at 6; 7; http://www.apache.org/licenses/LICENSE-2.0 8; 9; Unless required by applicable law or agreed to in writing, software 10; distributed under the License is distributed on an "AS IS" BASIS, 11; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12; See the License for the specific language governing permissions and 13; limitations under the License. 14 15; (new OtherClass() { int i = 5; }).getClass() 16 17; ClassAttrs$1.j 18 19; Generated by ClassFileAnalyzer (Can) 20; Analyzer and Disassembler for Java class files 21; (Jasmin syntax 2, http://jasmin.sourceforge.net) 22; 23; ClassFileAnalyzer, version 0.7.0 24 25.bytecode 52.0 26.source ClassAttrs.java 27.class final ClassAttrs$1 28.super OtherClass 29.enclosing method ClassAttrs/main()V 30; OpenJDK javac versions <= 8 consider anonymous classes declared side 31; static methods to be static (as is this one), whereas OpenJDK 9 javac 32; does not. See http://b/62290080 33.inner class static inner ClassAttrs$1 ; <anonymous> <not a member> 34 35.field i I 36 37.method <init>()V 38 .limit stack 2 39 .limit locals 1 40 .line 112 41 0: aload_0 42 1: invokespecial OtherClass/<init>()V 43 4: aload_0 44 5: iconst_5 45 6: putfield ClassAttrs$1/i I 46 9: return 47.end method 48 49 50