1.一个java文件里,public 的类只能出现一个,只能出现一个,只能出现一个,否则,不管你用哪一个类名命名文件名编译器都会报错
2.关于多态。子类继承了父类的所有成员,包括private权限的成员变量,但是继承的子类具有私有变量的拥有权但是没有使用权。
3.private的成员变量,根据权限修饰符的访问控制范围,只有在类内部才能被访问,就算是他的子类,也不能访问
4.子类构造方法在调用时必须先调用父类的,由于父类没有无参构造,必须在子类中显式调用
5.Java为单继承,多实现。
6.接口可以定义成员,必须为常量。
7.抽象类和接口类都不能实例化对象,任何编译器会报错,
8.接口中的成员变量 static final修饰
9.Java 7之前每个catch块只能不住一种类型的异常;Java 7之后开始一个catch块可以捕捉多个类型的异常
{多种异常之间用(|)隔开}
{异常变量用隐式的final修饰,程序不能多异常变量重现赋值}
10.会话跟踪:
{1.session 2.隐藏域 3. cookie 4.地址重写}
11. HasTable 与HasMap区别:
public class HasTable extends Dictionary impements Map
public class HasMap extends AbstracMap implements Map
Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线程并发的环境下,可以直接使用Hashtable,但是要使用HashMap的话就要自己增加同步处理了。
12.
forward,服务器获取跳转页面内容传给用户,用户地址栏不变
redirect,是服务器向用户发送转向的地址,redirect后地址栏变成新的地址
13.
被final修饰的变量是常量,这里的b6=b4+b5可以看成是b6=10;在编译时就已经变为b6=10了
而b1和b2是byte类型,java中进行计算时候将他们提升为int类型,再进行计算,b1+b2计算后已经是int类型,赋值给b3,b3是byte类型,类型不匹配,编译不会通过,需要进行强制转换。
Java中的byte,short,char进行计算时都会提升为int类型。
14. |左右都看 || 左边正确右边不用看
15.
A: request.getCookies();
取得设置Cookies
B: request.getHeader(String s);
读取写入HTTP头标
C: response.setContentType("text/html;charset=utf-8");
取得路径信息
C: request.getContextPath();/request.getServletPath();
标识HTTP会话
17. Java是强类型语言,所有方法必须在类里边。
public void main(String args[]){} 为函数入口。
内部类类名可以和文件名不一样,
18.
ServletContext对象:servlet容器在启动时会加载web应用,并为每个web应用创建唯一的servlet context对象,可以把ServletContext看成是一个Web应用的
服务器端组件的共享内存,在ServletContext中可以存放共享数据。ServletContext对象是真正的一个全局对象,凡是web容器中的Servlet都可以访问。
整个web应用只有唯一的一个ServletContext对象
servletConfig对象:用于封装servlet的配置信息。从一个servlet被实例化后,对任何客户端在任何时候访问有效,但仅对servlet自身有效,一个servlet的ServletConfig对象不能被另一个servlet访问。
|