Java面向对象部分小结
Java面向对象部分小结
第一天:
1. 了解面向对象和面向过程
2. 对象是什么,静态特性(属性),动态特征(方法)
3. 类和对象的关系
- 类是抽象的,对象是具体的
- 类是具有相同属性和行为(方法)的对象的集合
- 对象是类的一个实例,是一个具体的实体,是由属性和方法构成的。
4. 代码实现了类和对象的关系
只有对象才能调用方法
第二天:
1. 方法:如何去定义方法 - 五要素
访问修饰符,返回值类型,方法名,参数列表,方法体
有参方法,无参方法,有返回值,无返回值
第三天:
1. 面向对象的特性:封装
- 为什么要使用封装
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问 - 封装的好处
i. 隐藏了实现的细节,提高安全性和健壮性
ii. 符合java的“高内聚,低耦合”思想
iii. 提高了软件的独立性和可重用性 - 如何实现封装
i. 私有化属性;
ii. 创建公共的getter和setter方法;
iii. 在setter方法中添加控制语句
2. 构造方法
- 作用
创建对象,初始化对象,为对象属性赋值的过程 - 有参构造,无参构造
- this关键字的作用
this-当前对象
3. 成员变量和局部变量
第四天:
1. 构造方法
2. 方法的重载
- 如何判断是否构成重载
同类同名不同参,与其他无关。(不同参:不同的参数列表:个数不同,类型不同,顺序不同)
3. 继承
- 为什么要使用继,承继承的好处
将子类共有的属性和方法抽取到父类中,减少重复代码,实现代码的重用 - 子类继承了父类的哪些内容,不能继承哪些内容
i. private修饰的属性和方法
ii. 子类和父类不再同一个包下,不能继承默认访问权限的成员
iii. 不能继承构造方法 - super的用法
super - 可以调用属性,方法,构造方法,必须要在第一行 - java的类是单继承
4. 静态static - 变量,方法,代码块
执行的时机,类加载的顺序
第五天:
1. object类 – toString(),equals()
2. 方法的重写,为什么需要?遵循的原则-判断标准
- 当父类的方法满足不了子类的需求时
- 重写需要遵循的原则:方法名相同,参数列表相同,返回值类型相同,访问权限的修饰符不能严于父类
- 在子类和父类中存在,同名同参同返回值同访问修饰符的方法(返回值可以是其子类,访问修饰符不能比父类更严格)
3. 重写了equals()
第六天:
1. 多态-java中多态的体现:
父类或接口的引用变量指向了子类或实现类的实例对象
基础:方法的重写
前提:继承关系
注意:如果使用多态的方式创建对象的话,
只能调用父类或子类重写了父类的方法,
子类特有的方法是无法调用的
2. 类型的转换
第七天:
1. 抽象方法
2. 抽象类
3. 接口 – 特殊的抽象类
第八天:
1. 异常
- 常见异常
i. 算术异常:ArithmeticExecption
ii. 空指针异常:NullPointerException
iii. 数组下标越界异常:ArrayIndexOutOfBoundsException
iv. 类型转换异常:ClassCastException
v. 输入类型不匹配:inputMisMatchException - Java异常机制:捕获异常,抛出异常
- 关键字有哪些?
try,catch, finally,throw,throws - 有异常,无异常的执行过程
无异常时:
try {System.out.println("一");System.out.println(2 / 1);System.out.println("二");
} catch (Exception e) {e.printStackTrace();
}System.out.println("四");
- catch中捕获了异常,没有捕获到异常的执行顺序
捕获异常时:
try {System.out.println("一");System.out.println(2/0); //算数异常System.out.println("二"); //永远不会被执行
}catch (ArithmeticException e){System.out.println("ArithmeticException");
}System.out.println("四");
没有捕获到异常时:
try {System.out.println("一");System.out.println(2/0); System.out.println("二");
}catch (NullPointerException e){System.out.println("NullPointerException ");
}System.out.println("四");
- finally关键字的作用
不管有没有异常都会执行的代码
有一种场景是不会执行的,手动关闭程序-System.exit(0);
第九天:
1. 自定义异常 – 如何定义,如何使用
- 1:定义一个类继承Exception或者其子类;
----- class <自定义异常名> extends - 2:编写构造方法(无参和有参);
- 3:在需要的地方调用异常类(使用throw 抛出实例化后的异常)- 在方法的声明中需要声明
下周计划:
- 字符串
- java集合:List,set
- java集合:Map集合
- IO流
Java面向对象部分小结相关推荐
- Java面向对象知识点小结
再小的帆也能够远航
- Java多线程自我小结
Java多线程自我小结 一.多线程(Thread)的相关概念 1. 进程 2. 线程 3. 线程调度 (1)分时调度 (2)抢占式调度 4. 同步与异步 5. 并发与并行 二.多线程的三种启动方式 1 ...
- java面向对象编程基础
java面向对象编程基础 前言:什么是java 是咖啡飘香的清晨 - 是斯坦福校园意浓情深 - 是James的思想睿智 是剁手党双十一挥舞的利刃 是大数据云计算驰骋的平台 - 是ATM上吐出的钞票 - ...
- 5.Java面向对象编程
文章目录 05 Java面向对象编程 1. 面向过程与面向对象比较 2. 类和对象 2.1 对象的属性和方法 2.2 类的属性和方法 2.3 定义一个类 2.4 创建和使用对象 2.5 对象和类的总结 ...
- Java面向对象(6) —— 射击小游戏
这里做一个射击小游戏,作为对前面Java学习的一个小结. 1.设计 2.知识点总结 主要是在主程序ShootGame.java中引入了一些新知识,swing画图.定时器.鼠标事件处理.其他程序则主要体 ...
- java面向对象编程的实现
目录 前言 包 包访问权限 继承(extends) protected关键字 final 组合 多态 向上转型 方法传参 方法返回 动态绑定 方法重写 重载和重写的区别: 在构造方法中调用重写的方法( ...
- java面向对象编程精讲
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.包 1.1导入包中的类 1.2静态导入 1.3将类放到包中 1.4包的访问权限控制 1.5常见的系统包 二.继承 ...
- Java面向对象01
Java面向对象 根据B站up 遇见狂神说的 学习笔记 up视频地址 面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考.最后才对某个分类下的细节进 ...
- java面向对象-------静态初始化块
1.构造方法用于对象的初始化!静态初始化块,用于类的初始化操作,在静态初始化块中不能直接访问非static成员. package java面向对象; /** * 测试静态初始化块 */public c ...
最新文章
- oracle加undo+resize,How To resize undo tablespace in Oracle
- 可以把阿里云上面的一些介绍和视频都看看
- 【目录】shell 编程-xyq
- 天谕手游与奥特曼联手,玩家看到有多么激动?
- 动态链接库的创建和调用方法
- java高并发实战Netty+协程(Fiber)|系列1|事件驱动模式和零拷贝
- Java面向对象(4)--封装和隐藏
- 企业微信加密消息体_微信公众平台开发者中心安全模式消息体加解密实现
- java string范围_字符串索引超出范围? (Java,子字符串循环...
- ue4 如何获取端口号_尝试在UE4.22中实现罪恶装备Xrd的卡通渲染
- springmvc多文件上传
- 剑指offer——面试题58:二叉树的下一个结点
- win10开启多用户同时远程登录-很详细
- 让我们努力的学习ruby吧
- c语言 sin1怎么写,c语言sin30怎么写
- 【Python量化】风险平价策略
- 明日之后mumu模拟器找不到服务器,MuMu模拟器玩明日之后常见问题汇总
- SSO(Single Sign On)系列(三)--CAS单点登录
- python break语句作用_Python break语句详解
- python制作图片_python制作斗图生成器