(1) 业务对象以及业务关系的表示 (2) 处理简单的业务逻辑
(3) 域层的对象可以穿越表示层,业务层,持久层
软件分层结构使得代码维护非常方便,设计明确,各层独立,专注自己擅长的领域。
8、什么是OOP?OOP相对于面向过程编程有哪些优点?
OOP,Object-Oriented Programming,面向对象编程不同于面向过程编程: (1)OOP关注对象和角色,也就是事物的本质
1)OOP把客观世界中的对象抽象成对应的类; 2)通过类构造实例;
3)通过依赖、继承、实现等形式建立对象间的通信关系
(2)OOP易于扩展,增加或改变业务的功能,无需大幅改动改变源代码
(3)OOP易于建模,OOP就是软件架构师在计算机高级语言中对客观世界的抽象和再现,人们可以很好地理解和建立起计算机中的抽象模型
9、谈谈HashMap和Hashtable的区别。
答: HashMap是轻量级的(线程不安全的,效率高的)集合,Hashtable是重量级的(线程安全的,效率低的)集合。
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为它是同步的。
10、请问abstract class和interface有什么区别? 答:
1) 接口没有任何的实现,而抽象类它可以有部分的实现也可以没有; 2) 如果需要复用或者共享部分代码,应该用抽象类而不是接口;
3) 继承无法解决类型的转换问题,接口就是为了解决这一问题而产生的(Java的单继承是接口产生的根本原因) 接口是一种抽象的第三方规范,跟对象没什么直接关系。
11、类的核心特性有哪些?
类具有封装性、继承性和多态性。 封装性:
类的封装性为类的成员提供公有、缺省、保护和私有等多级访问权限,目的是隐藏类中的私有变量和类中方法的实现细节。 继承性:
类的继承性提供从已存在的类创建新类的机制,继承(inheritance)使一个新类自动拥有被继承类(父类)的全部成员。 多态性:
类的多态性提供类中方法执行的多样性,多态性有两种表现形式:重载和覆盖。
12、请问类与对象有什么区别? 类
类就是某一种事物的一般性的集合体,是相同或相似的各个事物共同特性的一种抽象。
对象
在面向对象概念中,对象(Object)是类的实例(instance)。对象与类的关系就像变量与数据类型的关系一样。
三、代码题。(每题8分,共2题)
1、 使用JavaScript编写一个函数,用于判断用户输入的用户字符串是否符合以下规则:长
度在5-15之间,每一个字符必须是字母,其他字符可以是字母、数字或下划线。另外编写测试代码调用此函数。
2、数据库有现在四张表:
学生表,表名为Student,字段包含学生编号SID,学生姓名Sname,学生年龄Sage,学生性别Ssex 教师表,表名为Teacher,字段包含教师编号TID,教师姓名Tname
课程表,表名为Course,字段包含课程编号CID,课程名称Cname,教师编号TID, 成绩表,表名为Score字段包含学生编号SID,课程编号CID,分数score 编写SQL语句,查询出平均成绩大于60分的同学的学号和平均成绩

