Eclipse新建类详解
时间: 作者:走吧走吧
Source Folder、Package
源文件,就是存放java源文件(未编译)的文件夹。当然也包括一些package文件夹,还可以包含其他文件
package,source folder,folder
在eclipse下,package,source folder,folder都是文件夹

上图中src/main/java 就是source folder
com.wisdombud.wisdomhr.spider.base就是package
异同:
相同:
package和source folder一样,除了java文件也可以包含其他文件。
项目构建后,两者里面的java自动编译成class文件到相应的/web-inf/classes文件夹中,其他文件也会移到/web-inf/classes相应的目录下
不同:
1.sourceFolder靠”/“来进行上下级划分,package靠”.”来进行上下级划分。如上图
2.source folder下能建package,而package下不能建source folder
3.java文件中的package属性是按package路径来进行赋值的,source folder路径不参与java文件的package属性赋值,再由第二条不同得到结论,所有source folder下的java文件package属性都为空package:当你在建立一个package时,它自动建立到source folder
下,也只能建立在这个目录之下.
folder:
里面可以放入任何文件.包括java源文件,jar文件,其他文件(例如,图片,声音等)。如果里面含有java源文件,不管程序是否正确,eclipse都不会报错,把它们当做普通文件处理。
package,source folder,folder 之间相互转换 查看参考文章
Enclosing type
新建类的时候,勾上这个选项,表示新建的是一个内部类。而它在哪个类的内部,需要选择。
- 内部类是指在一个类的内部再定义一个类。内部的这个类名不需要和文件夹名相同。
- 内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部类【即类名和文件名相同的类】只能使用public和default)
- 内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。对于一个名为outer的外部类和它内部的名为inner的内部类。编译完成后出现outer.class和outer$inner.class两类。所以内部类的成员变量/方法名可以和外部类的相同。
使用内部类的好处
- 内部类可以很好的实现隐藏
一般的非内部类,是不允许有 private 与protected权限的,但内部类可以- 内部类拥有外围类的所有元素的访问权限
- 可以实现多重继承
- 可以避免修改接口而实现同一个类中两种同名方法的调用。
Name
新建类的名字
Modifiers
这里修饰类的词只有4个选项。
- 并且选择上,上面的public和package是互斥的。
public表示该类是公共的,都可以访问的。
package表示只有同一个包下的类才可以访问这个类。- 虽然abstract和final可以同时选择,但是这两个是不能同时选择的。
abstract表示抽象类,类里面一定有抽象方法,抽象方法一定要子类来实现。
这与final不能继承 互斥。
Superclass
要继承的父类(单继承)
Interfaces
要实现的接口(多实现)
自动生成选项
- public static void main(String[] args) –入口函数;
- Constructors from superclass –生成构造函数;
- Inherited abstract methods –如果你继承的类存在abstract方法,会自动生成需实现的方法;
- Generate comments –自动生成注释;

