File tree Expand file tree Collapse file tree 6 files changed +80
-3
lines changed Expand file tree Collapse file tree 6 files changed +80
-3
lines changed Original file line number Diff line number Diff line change 1
- class A (val member : Int )
1
+ class A (val member : Int ) {
2
+ def getAMember = member
3
+ }
2
4
3
- class SubA (member : Int ) extends A (member)
5
+ class SubA (member : Int ) extends A (member) {
6
+ def getSubAMember = member
7
+ }
Original file line number Diff line number Diff line change 1
- class B (member : Int ) extends SubA (member)
1
+ class B (member : Int ) extends SubA (member) {
2
+ def getMember = member
3
+ }
2
4
3
5
object Test {
4
6
def printFields (cls : Class [_]) =
Original file line number Diff line number Diff line change
1
+ # Fields in A:
2
+ private final int A.member$$local
3
+ # Fields in SubA:
4
+
5
+ # Fields in B:
6
+
Original file line number Diff line number Diff line change
1
+ class A (val member : Int ) {
2
+ def getAMember = member
3
+ }
4
+
5
+ class SubA (member : Int ) extends A (member) {
6
+ def getSubAMember = member
7
+ }
8
+
9
+ class B (member : Int ) extends SubA (member) {
10
+ def getBMember = member
11
+ }
12
+
13
+ object Test {
14
+ def printFields (cls : Class [_]) =
15
+ println(cls.getDeclaredFields.map(_.toString).sorted.deep.mkString(" \n " ))
16
+
17
+ def main (args : Array [String ]): Unit = {
18
+ val a = new A (10 )
19
+ val subA = new SubA (11 )
20
+ val b = new B (12 )
21
+
22
+ println(" # Fields in A:" )
23
+ printFields(classOf [A ])
24
+ println(" # Fields in SubA:" )
25
+ printFields(classOf [SubA ])
26
+ println(" # Fields in B:" )
27
+ printFields(classOf [B ])
28
+ }
29
+ }
Original file line number Diff line number Diff line change
1
+ # Fields in A:
2
+ private final int A.member$$local
3
+ # Fields in SubA:
4
+
5
+ # Fields in B:
6
+
Original file line number Diff line number Diff line change
1
+ class B (member : Int ) extends SubA (member) {
2
+ def getBMember = member
3
+ }
4
+
5
+ class SubA (member : Int ) extends A (member) {
6
+ def getSubAMember = member
7
+ }
8
+
9
+ class A (val member : Int ) {
10
+ def getAMember = member
11
+ }
12
+
13
+
14
+ object Test {
15
+ def printFields (cls : Class [_]) =
16
+ println(cls.getDeclaredFields.map(_.toString).sorted.deep.mkString(" \n " ))
17
+
18
+ def main (args : Array [String ]): Unit = {
19
+ val a = new A (10 )
20
+ val subA = new SubA (11 )
21
+ val b = new B (12 )
22
+
23
+ println(" # Fields in A:" )
24
+ printFields(classOf [A ])
25
+ println(" # Fields in SubA:" )
26
+ printFields(classOf [SubA ])
27
+ println(" # Fields in B:" )
28
+ printFields(classOf [B ])
29
+ }
30
+ }
You can’t perform that action at this time.
0 commit comments