Maya1991

LocalClass

Jan 14th, 2016
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.01 KB | None | 0 0
  1. ▪️Test96.java
  2.  
  3. public class Test96 {
  4.     int outerMember;
  5.     final int outerMember2 = 80;
  6.     int outerMember3 = 500;
  7.  
  8.     void outerMethod() {
  9.         int a = 10;
  10.         final int b = 20;
  11.         // 外部クラスのメソッド内でクラス定義するクラスを
  12.         // ローカルクラスという
  13.         class LocalClass {
  14.             // staticなフィールド変数やメソッドを定義できない
  15.             // static int i = 100;NG
  16.             final int i2 = 120;
  17.             // abstract int i3 = 130;
  18.             // System.out.println(a);
  19.  
  20.             public void innerMethod() {
  21.                 outerMember = 2;
  22.                 System.out.println("innerMethodです");
  23.                 System.out.println(outerMember);
  24.                 System.out.println(a);
  25.                 System.out.println(b);
  26.                 System.out.println(outerMember2);
  27.                 System.out.println(outerMember3);
  28.             }
  29.         }
  30.         // innerMethod();では使えない
  31.         // 同じメソッド内ですぐに利用
  32.         LocalClass lc = new LocalClass();
  33.         lc.innerMethod();
  34.     }
  35.  
  36.     public static void main(String[] args) {
  37.         Test96 t = new Test96();
  38.         t.outerMethod();
  39.     }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment