今天和奇遇纠结这个问题,然后就用php写了下试试看。

先写个php,生成一个java文件

<?php
$count = 100;
$class = 'A';
$code = '';
for ($i = 0; $i < $count / 2; $i++) {
    $code .= "public class $class {\n";
    $class++;
}
$class = 'a';
for ($i = 0; $i < $count / 2; $i++) {
    $code .= "public class $class {\n";
    $class++;
}
for ($i = 0; $i < $count; $i++) {
    $code .= "}\n";
}
$code .= "// v";
$code .= "im: nofen:";
file_put_contents('A.java', $code);

然后javac之。

当到_101_层的时候就悲剧了(最后一层手动加)。

后来想到可以用_或者$做类名,然后试了一下,果然可以。

然后把$_都加上,就又悲剧了。

看来最多只能_100_层了。

大家也许发现我一直在纠结如何让类名都尽量短。

现在可以公布答案了。

层数太多导致的悲剧是。。。文件名太长

_101_层成功的case,文件名长度是53*2+48*3-1+6=255,刚好是linux文件名长度上限,windows号称全路径支持_260_字符,但我在一个根目录下试验_102_层(_100_层加上$_)悲剧了。

看来就只能到这了。