JAVA WEB高级 封装和继承 多态和接口 异常处理 Java 集合框架

JAVA WEB高级
作用:

  1. 使用JAVA编写面向对象的程序
  2. 适用集合存取对象
  3. 使用JAVA异常处理编写程序
  4. 使用日志工具和单元测试工具
  5. 使用JDBC操作数据库
  6. 使用JSP , Servlet进行WEB开发

封装和继承

封装
概念:
1.将类的属性私有化,并提供公有方法访问私有属性的机制
2.将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
好处:

  1. 隐藏类的实现细节
  2. 数据访问的安全性,应用数据访问限制规则
  3. 保证数据的完整性
  4. 有利于代码的可维护性
    封装的实现步骤
  5. 使用private将类中属性私有化(使用private 修饰的属性只能在类的内部调用,访问权限最小)
  6. 给每个私有属性提供公有的getter/setter方法
  7. 在getter/setter方法中添加访问限制语句

构造方法
特点:

  1. 方法名相同
  2. 方法没有返回类型
  3. 通过new关键字调用
    无参构造方法:
    (若类中没有显示定义构造方法就JVM会默认添加一个无参构造方法)

有参构造方法:
(有参构造方法常常用于给属性初始化赋值,若类中存在有参构造方法,建议也要添加一个无参构造方法)

方法重载
特征:

  1. 在同一个类中
  2. 方法名相同
  3. 参数列表不同
  4. 访问权限即返回类型无关紧要

构造方法重载好处:(完成多种初始化行为)

继承的作用
避免重复的代码(代码重用)
继承的特点:

  1. 子类继承父类后,拥有所有能访问的属性和方法
  2. 具备“is-a”的关系
  3. 子类无法继承父类私有方法及构造方法
  4. 单一性
  5. 遗传性

继承需要符合的关系:is-a,父类更通用,子类更具体

继承的实现:

  1. 在JAVA中实现继承很简单,使用extends关键字即可,语法如下所示:
    Public class SubClass extends SuperClass {//继承 }
    SubClass成为子类(扩展类或者派生类);SuperClass成为父类(基类或者超类)
    可以被默认添加Super();Super(参数表);(只能是构造方法的第一条语句)
  2. 父类中定义公共的属性和方法,子类中定义特有的属性和方法
  3. 子类中通过super关键字指代父类

继承中的构造方法:
实例化子类对象时,首先调用父类构造方法,然后再调用子类构造方法

方法重写

  1. 在父类与子类之间
  2. 方法名完全相同
  3. 参数列表完全相同
  4. 返回类型完全相同
  5. 子类的访问修饰符的范围必须大于等于父类中的访问修饰符
    (public>=default>=protected>=private)
    父类中私有的方法不能被继承,所以也不能被重写
    方法重载
  6. 同一个类中
  7. 方法名相同
  8. 参数列表不同
  9. 访问权限和返回类型无关紧要
    多态和接口

多态:
多态性是OOP中的一个重要特性,主要是用来实现动态联编,程序的最终状态只有在执行中才被决定而非在编译期间决定。能提高大型系统的灵活性和扩展性。

多态存在的三个必要条件:
1.继承
2.方法重写
3.父类引用指向子对象

向上转型和向下转型:
子类转换为父类:自动转换

  1. 上转型对象不能操作子类新增的成员变量和方法
  2. 上转型对象可以操作子类继承或重写的成员变量和方法
  3. 如果子类重写父类的某个方法,上转型对象调用该方法时,是调用的重写方法
    父类转换为子类:强制转换
    (父类就是一个子类,否则会出现类型转换错误)

抽象类

  1. 是一种模板模式。抽象类为所有子类提供了一个通用模板,子类可以在这个模板基础上进行扩展。
  2. 通过抽象类,可以避免子类设计的随意性,可以严格限制子类的设计,使子类之间更加通用。

要点:
■抽象方法和抽象类均必须用abstract来修饰。
■抽象方法没有方法体,只需要声明不需实现。
■有抽象方法的类只能定义抽象类
■相反抽象类里面的方法不一定全是抽象方法,也可能没有抽象方法。
■抽象类可以包含属性,方法,构造方法。
■抽象类不能实例化,及不能用new来实例化抽象类,只能用来被子类调用。
■抽象类只能用来继承。
■抽象方法必须被子类实现。抽象类的子类必须覆盖所有的抽象方法才能被实例化,否则还是抽象类。

接口:
接口:public interface 接口名称 {} //语法
(接口里的方法没有方法体,所有的方法都是抽象的)
实现:public class 类名 implements 接口 1,接口2…{}
(一个类可以实现多个接口,但是只能继承一个父类)

抽象类和接口的区别
■接口就是比"抽象类”还“抽象”的“抽象类”,可以更加规范的对子类进行约束。全面地专业地实现了:规范和具体实现的分离。
■接口就是规范,定义的是一组规则。
■接口的本质是契约,就像我们人间的法律一样。 制定好后大家都遵守。

面向对象总结:
00基本特征 定义 具体实现方式 优势
封装 隐藏实现细节,对外提供公共的访问接口 属性私有化、添加公有的setter、 getter方法 增强代码的可维护性
继承 从一个已有的类派生出新的类,子类具有父类的一般特性,以及自身特殊的特性 继承需要符合的关系: is-a 1、 实现抽象(抽出像的部分)
2、增强代码的可复用性
多态 同一个实现接口,使用不同的实例而执行不同操作 通过Java接口继承来定义统一的实现接口:通过方法重写为不同的实现类子类定义不同的操作 增强代码的可扩性、可维护性

                    异常处理

异常处理机制:
@在整个java的异常处理中,实际上也是按照面向对象的方式进行处理,步骤如下:
■一旦产生异常,则首先会产生一个异常类的实例化对象
■在try语句中对此异常对象进行捕捉
■产生的异常对象与catch语句中的各个异常类型进行匹配,如果匹配成功,则执行catch语句中的代码块;
■如果有finally语句,则最后执行finally语句内容

异常处理格式:
try {
//有可能出现异常的语句
}catch(异常类 异常对象) {
//编写异常的处理语句
} [catch(异常类 异常对象) {
//编写异常的处理语句
}….]
[ finally {
//不管如何一定 会执行的代码:
}]

Throws:
用在方法前,声明此方法可能会产生某种类型异常,它强制要求方法的调用者必须用try-catch来处理。
Throw: 开发人员自行抛出异常。

Java 集合框架
泛型:
所谓泛型,就是允许在定义类、接口、方法时使用类型形参,这个类型形参将在声明变量、创建对象、调用方法时动态地指定(即传入实际的类型参数,也可称为类型实参)。Java 5改写了集合框架中的全部接口和类,为这些接口、类增加了泛型支持,从而可以在声明集合变量、创建集合对象时传入类型实参,这就是在前面程序中看到的List和ArrayList 两种类型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值