基础概念5

 

今天开始第五篇基础概念。

 

1、父类和子类构造器之间的关系:

 

答:父类的构造函数并不会由子类继承,但是子类会默认调用父类的无参构造函数。

若父类存在有参构造函数,则子类存在两种可能:(1)子类只有默认的无参构造函数,则父类必须手动提供一个无参构造函数。

                                                                                        (2)子类必须存在有参构造函数,且在利用super调用父类的有参构造函数。

 

 


2、接口和抽象类的区别:

  • 一个子类只能继承一个抽象类,但能实现多个接口
  •  抽象类可以有构造方法,接口没有构造方法
  • 抽象类可以有普通成员变量,接口没有普通成员变量
  • 抽象类和接口都可有静态成员变量,抽象类中静态成员变量访问类型任意,接口只能public static final(默认)
  • 抽象类可以没有抽象方法,抽象类可以有普通方法,接口中都是抽象方法
  • 抽象类可以有静态方法,接口不能有静态方法
  • 抽象类中的方法可以是public、protected;接口方法只有public

 

 


3、Spring框架的事务处理:

        Spring框架的事务处理是基于动态的AOP机制实现的,它把所有注入连接数据库、捕获异常、清理资源等操作封装到一些已经

定义好的类和接口当中,程序员只需要在Spring配置文件中将它们载入,并且编写类实现那些处理业务逻辑的接口即可。Spring事务

处理方式有两种:

(1)编程式事务处理:

               通过重写接口中特定的方法实现。

(2)声明式事务处理:

              通过拦截器机制来实现。

最终使得业务逻辑和事务控制相分离。




4、事务相关属性含义介绍:


  • PROPAGATION_SOPPROTS:如果当前没有事务,则以非事务方式运行。
  • PROPAGATION_REQUIRED:如果当前没有事务,则创建一个事务。
  • PROPAGATION_MANDATORY:如果没有事务,则抛出异常。
  • PROPAGATION_REQUIRES_NEW:新建一个事务,如果当前已经存在一个事务,则把其挂起。
  • PROPAGATION_NEVER:以非事务方式操作,如果当前存在事务,则抛出异常。



5、HashMap和Hashtable的区别:

  • HashMap和Hashtable都实现了Map接口
  • HashMap是非synchronized,而Hashtable是synchronized
  • HashTable使用Enumeration,HashMap使用Iterator
  • Hashtable直接使用对象的hashCode,HashMap重新计算hash值,而且用与代替求模


6、Java中方法内部类为什么只能访问 final 类型的局部变量?

 

答:因为方法的局部变量位于栈上,只存在于该方法的生命期内。当一个方法结束,其栈结构被删除,局部变量成为历史。但是该

方法结束之后,在方法内创建的内部类对象可能仍然存在于堆中!例如,如果对它的引用被传递到其他某些代码,并存储在一个成

员变量内。正因为不能保证局部变量的存活期和方法内部类对象的一样长,所以内部类对象不能使用它们。所以方法内部类只能访

问final类型的局部变量。

 

 

7、如图所示:


 

 此题错在了always!!!,当我们没有显示声明构造方法时,系统才提供默认无参构造方法。

 


 

8、java中值传递(call by value)和引用传递(call by reference):



答:引用数据类型是引用传递(call by reference),基本数据类型是值传递(call by value)
     

       值传递不可以改变原变量的内容和地址==》原因是java方法的形参传递都是传递原变量的副本,在方法中改变的是副本的值,而不是原变量的值。
       引用传递不可以改变原变量的地址,但可以改变原变量的内容==》原因是当副本的引用改变时,原变量 的引用并没有发生变化,当副本改变内容时,由于副本引用指向的是原变量的地址空间,所以,原变量的内容发生变化。

结论:1、值传递不可以改变原变量的内容和地址;
            2、引用传递不可以改变原变量的地址,但可以改变原变量的内容;


9、Servlet监听器:

       Servlet规范中第一轮多种类型的监听器,用于监听的事件源有:ServletContext、HttpSession以及ServletRequest这三个作

用于对象。当这三个对象域对象创建、销毁或者其中属性增加、删除等事件发生时,将执行对应监听器类的特定方法。












 

posted on 2016-10-25 21:57  岚之山  阅读(121)  评论(0编辑  收藏  举报

导航