抽象クラスはこれは抽象クラスのインスタンス化ですか?
その後、(あなたが コードの下に見ることができるように)抽象クラスAの変数 アクセスやメソッドのアクセスができさえ は延長せずにクラスチェックで達成されるか、インスタンス化できない場合は抽象クラスAのオブジェクトですか?
CODE
abstract class A
{
int a=10;
public A()
{
System.out.println("CONSTRUCTOR ONE");
}
public A(String value)
{
System.out.println("CONSTRUCTOR "+value);
}
void add(int sum)
{
System.out.println("THE SUM IS:"+sum);
}
int sub(int a,int b)
{
return(a-b);
}
}
public class check
{
public check()
{
new A("TWO"){};
}
public static void main(String args[])
{
int a,b,sum;
a=10;
b=15;
sum=a+b;
A s = new A() {};
new check();
s.add(sum);
int subb=s.sub(35,55);
System.out.println("THE SUB IS:"+subb);
System.out.println("THE VALUE OF A IS:"+s.a);
}
}
OUTPUT
CONSTRUCTOR ONE
CONSTRUCTOR TWO
THE SUM IS:25
THE SUB IS:-20
THE VALUE OF A IS:10
BUILD SUCCESSFUL (total time: 0 seconds)
これは実際にはs.getClass()。getName();を呼び出して確認できます。作成された匿名サブクラスの名前を返します(通常A $ 1のようなものです)。 – linead