1 共享数据,必须进行同步存取。当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程。
2 forward 和 redirect的区别
forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。
3 构造器不能被继承,因此不能重写,但可以被重载。
4 switch(expr1)中,expr1 是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于 swtich。
5 try{}里有一个 return 语句,在这个 try后的 finally {}里的 code 会在 return 前被执行。
6 写一个 Singleton :
第一种形式:
public class Singleton {
private Singleton(){
}
private static Singleton instance = new Singleton();
public static Singleton getInstance() {
return instance;
}
}
第二种形式:
public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance() {
if (instance==null)
instance=new Singleton();
return instance;
}
}
7 所有的异常都是 java.lang.Thowable 的子类。
8 Java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。
9 JVM 中类的装载是由 ClassLoader和它的子类来实现的。
10 线程有四种状态分别是:运行、就绪、挂起、结束。
11 JSP 侧重于视图,Servlet 主要用于控制逻辑。
12 Servlet 执行时一般实现哪几个方法?
public void init(ServletConfig config);
public ServletConfig getServletConfig();
public String getServletInfo();
public void service(ServletRequest request,ServletResponse response);
public void destroy()
13 throw 语句用来明确地抛出一个“异常”。throws 用来标明一个成员函数可能抛出的各种“异常”。
14 MVC是 Model-View-Controller的简写。
"Model" 代表的是应用的业务逻辑(通过 JavaBean,EJB 组件实现), "View" 是应用的表示面(由 JSP 页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。
15 java中会存在内存泄漏。如:int i,i2; return (i-i2); //当 i 为足够大的正数,i2 为足够大的负数。结果会造成溢位,导致错误。
16 方法的重写 Overriding 和重载 Overloading 是 Java多态性的不同表现。重写 Overriding 是父类与子类之间多态性的一种表现,重载 Overloading 是一个类中多态性的一种表现。
17 程序员可以手动执行 System.gc(),通知 GC运行,但是 Java语言规范并不保证 GC一定会执行。
18 线程的状态:初始状态,就绪状态,阻塞状态,运行状态,死亡状态。
19 优化数据库主要是优化查询语句,通过高性能的查询语句提高数据库的性能。
20串行化的注意事项以及如何实现串行化。答:如果有循环引用是不可以串行化的。对象输出流的 WriteObject方法和对象输入流的 ReadObect 方法。
相关推荐
在这个"java一些细节知识"的压缩包中,包含了一份名为"java test.doc"的文档,我们可以期待它涵盖了作者个人测试后总结的Java关键知识点。以下是对这些可能包含的内容的详细解释: 1. **变量与数据类型**:Java支持...
在Java中,实现一个三维装箱(也称为三维背包问题)的算法通常涉及到组合优化和动态规划。这个问题是一个典型的优化问题,其中目标是在三个维度的限制下最大化价值的总和。下面是一个简单的Java代码示例,它使用动态...
这里我们将深入探讨三次样条插值的概念、算法以及Java实现的细节。 首先,我们要理解什么是样条插值。样条插值是一种多项式插值形式,它通过将数据点之间的区域分割成若干子区间,并在每个子区间内定义一个低次...
《达内 CoreJava 细节》是一份针对Java初学者和进阶者的重要学习资源,主要涵盖了CoreJava的基础部分。这份PDF文档旨在提供实用且深入的Java编程知识,帮助读者全面掌握这一强大的编程语言。 CoreJava是Java的核心...
本书由“java之父”Jame Gosling 以及另外三位顶级大师撰写而成,无论是对java语言的初学者还是专业程序员都具有极高的价值,是关于java程序设计语言最权威的技术参考书。 本书侧重于java技术细节和内幕,全面,准确...
本资料集聚焦于“JAVA第三章的课后习题答案”,旨在帮助学习者巩固并深化对Java基础知识的理解。 在Java的学习过程中,课后习题是检验理解和应用所学知识的重要手段。第三章的内容可能涵盖了类、对象、封装、继承、...
通过对这款【Java版三维迷宫游戏源码】的分析和学习,不仅可以掌握Java编程技能,还能深入了解游戏开发过程中的各种技术细节,提高问题解决和项目管理能力。无论是对初学者还是有一定经验的开发者,都是一个宝贵的...
在Java开发中,调用第三方短信接口是一项常见的任务,用于实现验证码发送、通知提醒等功能。以下将详细讲解这个过程中的关键知识点。 1. **HTTP请求**:大部分第三方短信平台提供的API是基于HTTP协议的,因此Java中...
【标题】"三子棋java窗体"是一个基于Java编程语言开发的小游戏,适用于初学者进行实践和娱乐。这个游戏的核心是实现一个简单的三子棋(也称为井字游戏或Noughts and Crosses)界面,玩家可以在二维棋盘上轮流放置...
【标题】"java版微信三级分销完整源码.rar"揭示了这是一个基于Java编程语言开发的微信三级分销系统。微信三级分销是一种营销模式,通过微信平台推广商品,每个用户都可以成为销售员,根据其推广层级获得相应的佣金。...
第三章进一步深入到面向对象编程,讨论了访问修饰符(private、default、protected、public)、静态(static)关键字、私有化(private)成员变量、方法重载(参数类型和个数不同)以及`this`关键字的含义。...
大量的教程涵盖了该语言的许多细节,每节都有示例练习,您可以尝试并扩展Java知识。
现在,让我们深入探讨这些框架的细节,了解它们如何协同工作,提升Java应用的开发效率和质量。 首先,Spring框架是Java开发中的一个全功能的框架,以其依赖注入(Dependency Injection,DI)和面向切面编程(Aspect...
Java三大框架指的是Spring、Struts和Hibernate,它们是Java企业级应用开发中广泛使用的开源框架,极大地提高了开发效率和代码质量。在这个“java三大框架示例”中,我们可以期待找到这三个框架的配置教程和实际应用...
Java3D 是一种由 Sun Microsystems 开发的高级三维图形编程接口,它建立在 Java 语言之上,为开发者提供了在 Java 应用程序中创建、操纵和显示三维对象的能力。Java3D API 将底层的图形渲染技术,如 OpenGL 和 ...
在学习Java的过程中,理解和掌握细节是非常重要的,这有助于我们编写出更高效、更可靠的代码。以下是一些关键知识点的详细说明: 1. **方法定义**:在Java中,方法的唯一性由其名称和参数列表决定。`main`方法是...
Java 3D通过抽象化底层的图形硬件细节,让开发者能够专注于场景的逻辑和交互,而不是硬件的兼容性问题。 在实际应用中,Java 3D广泛应用于科学可视化、教育、金融数据表示、医疗教育、地理信息系统(GIS)、计算机...
这份"java笔记(细节问题讲的很细)"很可能包含了Java语言的核心概念、类库使用、编程技巧以及常见问题的解决方案。 一、Java基础 1. 变量与数据类型:Java提供了八种基本数据类型,包括整型、浮点型、字符型和...
Java 8之后,接口可以包含静态方法,不过实现细节仍然可能需要放在包私有类中。 3. 静态工厂方法的命名和设计 良好的命名对于静态工厂方法非常重要。它们通常有描述性的名称,如valueOf、of、getInstance、new...