avaOOP(面向对象编程)
JavaOOP即面向对象编程,面向对象设计的过程就是抽象的过程;面向对象就是采用“现实模拟”的方法设计和开发程序。面向对象的技术就是利用“面向对象的思想”去描述“面向对象的世界”,实现了虚拟世界和现实世界的一致性,符合人们的思维习惯,同时有代码重用性高、可靠性高、可扩展性高等优点,大大提高了软件尤其是大型软件的设计和开发效率。
面向对象编程的三大特征:
1.封装就是将类的状态信息隐藏在类的内部,不允许外部程序直接访问,而通过该类提供的方法来实现对隐藏信息的操作和访问。大大提高了代码的安全性。
2.继承:继承是java中实现代码重用的重要手段之一。Java中只支持单继承,即每个类只能有一个直接父类。继承表达的是 is a 的关系。而在java中所有的java类都直接或间接的继承了Object类。Object类是所有java类的祖先,所以如果定义一个类时,没有用extends关键字,那么这个类就直接继承Object类。
3.多态:多态是具有表现多种形态的能力特征。更专业的说法就是:同一个实现接口使用不同的实例而执行不同的操作。多态性是对象多种表现形式的体现。
Override与OverLoad区别
1. Override(重写):在父子类中
Overload(重载):在同类中
2. Override(重写):方法名 参数列表 返回值类型相同,访问修饰符不能严与父类
Overload(重载):方法名相同,其余的都可以变更
3. Override(重写):父类无法满足子类的需求,子类重写父类。
Overload(重载):为了方便方法的调用。
abstract类与interface区别?
1.(关键字)abstract类需要继承要有extends,interface需要实现要有implements
2.(数量)一个类可以有多个interface,但一个类只能继承一个abstract类
3.(关系)interface强调特定功能的实现,二abstract类强调所属关系
4.(内部)interface中的每个方法都是抽象方法只是声明没有实体,abstract类不都是抽象方法
runtimeException有哪些?什么情况会出现?
1.NullPointerException(空指针)
2.ArrayIndexOutOfBoundsException(数组下标越界)
3.ClassCastException(对象强制类型转换出错)
4.ArithmeticException(算术错误情形)
5.IllegaArgumentException(非法参数)
6.NumberFormatException(数字格式转换异常)
集合框架的接口和实现类有哪些?区别?
接口:
Collection(存储一组不唯一,无序的对象)
List(存储一组不唯一,有序的对象)
Set(存储一组唯一,无序的对象)
Map
类:
ArrayList LinkedList HashMap TreeMap HashSet TreeSet HashTable等
ArrayList与LinkedList区别:
ArrayList:实现了长度可变的数组,在内存中分配连续的空间,遍历元素和随机访问元素效率比较高
LinkedList:采用双向链表结构,插入删除元素效率比较高。
HashMap与TreeMap的区别?(HaspTable)
1.HashMap:结果是没有排序的,而TreeMap输出的结果是排好序的。
2.HashMap:哈希表数据结构。
TreeMap:底层是二叉树数据结构。
3.HashMap的键和值都可以为空
TreeMap的键和值都不能为空。
HashMap与HashTable的区别?
1.HashMap的键和值都可以为空;HashTable的键和值都不能为空
2.HashMap继承自AbstractMap;Hashtable继承自 Dictionary
3.HashMap方法是未同步的;HashTable方法是同步的
4.HashMap非线程安全,效率相对高些;HashTable线程安全,效率相对低些
JSP的九大内置对象
1.page:指令
2.out:输出信息
3.request:处理客户端请求
4.response:响应客户端请求
5.session:作用域:一次会话
6.application:作用域:项目
7.pagecontext:取得任何范围的参数,通话它获取jsp页面的out,request,response,session,application等对象。
8.config:取得服务器的配置信息
9.exception:异常。
转发与重定向的区别
1.转发:地址栏不改变,转发请求一次,转发可以将request传递到下一份页面
2.重定向:地址栏改变,重定向请求两次,重定向不能将request带到下一个页面
实现分页的5个对象(Page工具类中的属性)
1.currPageNo当前页码
2.totalPageCount 总页码
3.pageSize页面大小
4.tatalInfoCount总信息数
5.List<> new List当前页的数据集合
String是最基本的数据类型吗?
基本数据类型包括byte、int、char、long、float、double、boolean和short。
java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类
String 和StringBuffer的区别
JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。
Collection 和 Collections的区别。
Collection是集合类的上级接口,继承与他的接口主要有Set 和List.
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
&和&&的区别。
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。
数组有没有length()这个方法? String有没有length()这个方法?
数组没有length()这个方法,有length的属性。String有有length()这个方法。
是否可以继承String类?
String类是final类故不可以继承。
构造器能被重写吗?
答:构造器不能被继承,因此不能被重写,但可以被重载。
十九.JSP组成部分
答:1.指令(page:导包,指定编码)
2.小脚本(Java代码)
3.静态页面
4.声明
5.注释
6.表达式