/**
 * 一个.java源文件中可以有多个类吗?(内部类除外)有什么条件? 
 * 可以的   
 *但是只能有一个public类, 而且如果有public类的话,这个文件的名字要和这个类的名字一样。
 *如果都没有public类,名字可以不和这个类一样。
 */

1.   你在一个文件里定义了几个类的时候,会出现这种情况,比如   

public   class   Tsee  {}   
  class  Address   {}   
  class   Customer   {}

 这样每个  class  会是一个  .class 文件,如图:

一个java项目有多个model 一个java文件多个类_Customer

 2.   你定义了内部类的时候会出现这种情况,如  

public   class   A   {   
          class   B   {   
          }   
  }

 这会产生两个 class   文件,一个  A.class,一个   A$B.class   

3.   使用了匿名类的时候出出现这种情况,如   

public   class   A   {   
           void   xxx()   {   
                     button.addActionLisener(new   ActionListener()   {...});   
           }   
   }

  这也会产生多个   class,一个   A.class,一个   A$1.class