核心面向对象

顺便整理了一下异常,感兴趣的可以看下去
核心面向对象
1.面向对象就是把现实世界中的对象抽取为类,根据类创建对象,进行映射的思想
2.使用面向对象,方便我们沟通
面向对象分析的过程就是抽象的过程。
其中的核心:类、对象、方法以及属性
3.面向对象的特征
(1)封装
①定义:隐藏属性、行为和实现细节的操作
②访问修饰符:
1)public
2)protected
3)默认
4)private
③属性赋值
1)构造复制
2)setter
④构造方法:与类名相同,没有返回值类型
1)构造方法私有:
a.单例模式
b.不需要创建对象的类,Arrays
2)如何调用
a.new
b.this()
c.子类调用父类 super()
3)作用:
a.创建对像
b.属性初始化
⑤创建对象的过程
1)加载类–加载到object
2)执行static修饰的内容(方法不会执行)
3)调用构造方法—直到Object
4)父类的属性赋值–父类–子类属性–子类构造
5)完成
⑥调试debug
⑦重载:一个类中有多个同名方法,方法的参数列表不同(个数、类型、类型顺序)
2)继承
①子类继承父类拥有父类的所有属性和行为
②特点:
1)增强代码的重用行
2)可以维护
3)灵活
③父类引用指向子类对象
只能访问父类中定义的内容,如果方法在子类中出现,调用子类中的
④类型转化
1)自动转换:父类 = 子类;子类中特殊属性和行为无法访问
2)强制转换:子类 = (子类类型)父类
必须保证父类的引用,指向子类的对象
对象引用 instanceof 类型
⑤重写:子类中出现跟父类中方法签名完全相同,覆盖
1) 方法名
2)返回值类型
3)参数列表
4)访问修饰符高于等于父类的
⑥不能被重写的方法
1)构造方法
2)private
3)static
4)final
⑦super:在子类中访问父类的内容
1)父类的对象使用:可以在非static修饰的内容中
2)父类的构造使用:只能在子类的构造中使用 必须是第一句
⑧修饰符
1)static:修饰的内容在类加载时被解析
a.方法
b.代码块
c.属性
加载数据库驱动
2)final
a.方法
b.变量、属性、形参
c.类
String、System、Math
3)abstract
a.方法
b.类
⑨抽象类:具有抽象方法的类就是抽象类或不能被new的类
⑩Object
(3)多态:
①实现方式
1)继承类实现多态
2)实现接口实现多态
②分类
1)静态多态(编译时多态),方法的重载
2)动态多态(运行时多态),方法重写
(4)实现:接口
①接口分类
1)常量接口,接口是存放常量的最佳地点
public static final 数据类型 变量名 = 值
2)功能
所有方法都是抽象方法:public abstract 返回值 方法名(参数列表)
default 返回值 方法名(){
}
如果一个类实现了多个接口,接口中出现default修饰方法名相同,必须在实现类中显示的定义该方法,接口名.super.方法名()
3)标识:制作开关使用
②一个类可以实现多个接口,一个接口可以继承多个接口
4.单例模式
(1)编写规则
①构造方法私有
②公有静态的返回类对象的方法
③私有静态的本类对象的实例
5.如何使用面向对象的方法编程
(1)先分析
(2)发现重复提取父类 is-a 的关系,不是的话使用接口
(3)细化
异常处理
1.异常:在程序运行过程中发生不可预料的问题,要进行处理,保证程序能够正确运行
2.异常的分类
(1)编译时异常:如果不处理,编不通过,IOException ClassNotfoundExceptio
(2)运行时异常:运行过程中发生也可能不发生,RuntimeException
3.异常的结构
在这里插入图片描述
4.java中如何处理异常
(1)try: 负责监视代码
(2)catch:捕获异常,在其中可以记录信息
(3)finally:负责收尾,释放资源,不管是否有异常,都会执行
(4)throw:引发或抛出一个新的异常,自定义异常
(5)throws:定义在方法上,向外声明需要处理异常
5.处理异常的情况
(1)程序运行没有任何异常,执行完try之后执行finally 再执行程序以后的内容
(2)程序发生异常,并且正确处理了,执行catch后执行finally 再执行后续的内容
(3)程序运行发生异常,不能处理,执行finally后程序终止
6.问题
(1)什么情况下finally不会执行?
System.exit(0)
(2)finally遇到return先执行finally中的内容再return
7.异常信息的记录到文件中:log4j
8.如何添加异常处理
(1)我们的编译器会自动提示,需要添加异常处理
(2)根据自己的分析,可能有异常,就添加try catch

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看到代码就头秃的秃头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值