深拷贝与浅拷贝,多态的好处,内存泄露与内存溢出区别,枚举类,javaweb中libraries区别

深拷贝与浅拷贝


1)深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。

2)浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(名称不同)。对其中任何一个对象的改动都会影响另外一个对象。

注:系统提供的数组拷贝方法public static native void arraycopy(Object src,  int  srcPos,Object dest, int destPos,int length);就是浅拷贝


多态的好处


1)把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化。

2)便于实现程序的扩展性

3)灵活的改变父类引用的功能


内存泄露与内存溢出区别


1)内存泄露是指程序持有不在使用的对象的引用,从而导致该对象无法被回收的情况称为内存泄露;

2)内存溢出指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory。


枚举类


一个类的实例有限且固定,则这个类叫做枚举类。

1)使用private将构造器隐藏起来;

2)把这个类的所有实例都用publicstatic final修饰;

3)可以提供一些静态方法,允许其他程序根据特定参数来获取与之匹配的实例。


javaweb中libraries区别


1)JRE System Library主要存放J2SE的标准jar,一般不需要调整。

2)Referenced Libraries是存放第三方的jar包,也就是自己导入的jar包。在项目属性的Java Build Path中的Libraries中配置。

        这里导入和配置jar包,都是为了让web工程能够在eclipse开发环境可以正常编译,不报错而已。如果该web工程利用eclipse生成war包,

        是不会导出其jar包到WEB-INF/lib文件夹下的。

3)Web App Libraries的主要作用是让eclipse导出war包的时候,会把其目录下的所有jar或者项目中的工程引用都导出到WEB-INF/lib文件夹下。

        Web App Libraries中的jar包在eclipse中项目属性的Java EE Module Dependencies配置的。如果你勾上了,或者添加了外部jar包,

       都会在WEB-INF/lib文件夹下生成。当然,如果你直接在WEB-INF/lib文件夹下,copy一个jar进入,刷新一下,Web App Libraries也会自动增加

        一个jar的引用。简单说,Java EE Module Dependencies的配置只针对Web AppLibraries的。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值