IT第二十天 - 面向对象编程思想、抽象类、异常处理、程序操作日志记录、本周总结 ★★★
|
IT第二十天 |
|||
|
上午 |
面向对象编程思想 |
1.组装电脑的设计: (1)电脑的组成:显示器+机箱 (2)机箱的组成:电源+主板+硬盘 (3)主板所包含的部件:cpu+内存+PCI接口+usb接口 (4)PCI接口:显卡+声卡 (5)USB接口:U盘 2.人的描述: (1)人按肤色分:黄人+黑人+白人;人按年龄分:老年人+青年人;人按性别分:男人+女人;等等 (2)可以写一个Person类,当去描述一个人时,可以让这个类去实现多个不同的接口,如实现男人的接口、实现青年人的接口、实现黑人的接口等等 |
|
|
抽象类 |
1.抽象类中可以有抽象方法,也可以有有方法体的方法,抽象类需要继承后才能使用,需要实现该抽象类的所有抽象方法,抽象类不能实例化 |
||
|
异常处理 |
|||
|
下午 |
异常 |
1.异常的捕获,需要匹配相应的异常类型,或者父类型,否则将造成异常不能够被正常的捕获 2.在try-catch后,finally语句块必被执行,无论异常是否发生,或者在try-catch语句块存在return返回 3.多重catch,当存在多个catch语句块时,会依次执行相应的catch捕获语句块,并且一旦找到匹配的catch语句块,之后的catch语句块都不会被执行 4.如果抛出的异常是非Runtime异常,需要使用throws声明出来,并且声明的类型必须相同,否则可能会造成报错(待理解) 5.子类在重写父类的方法时,抛出的异常不能比父类的方法抛出的异常类型范围法,但是可以抛出多个异常 |
|
|
断言 |
1.断言主要是在确定某些值时,设立断言,用于判断在程序运行时,是否真的如愿 2.在使用断言前,需要配置环境:-enableassertions |
||
|
日志文件 |
1.使用系统的日志生成类进行编写 2.使用第三方的日志插件进行操作日志的生成:log4j 使用方法: (1)首先需要导入log4j的jar包文件 (2)然后再src目录进行配置文件的编写log4j.properties (3)声明日志生成的变量,log4j是使用的单例模式进行设计的,因此需要调用其get方法进行获取, (4)最后在需要输出日志信息的代码行,进行相应的日志输出,如:debug、info、error等 |
||
|
晚上 |
|||
|
笔记 |
1.面向对象的编程思想:电脑组装、人的描述 2.异常处理,包括异常的捕获、多重catch、finally的使用 3.在进行方法的编写时,如果抛出的异常是非Runtime异常,这时需要使用throws进行声明,并且声明的类型必须相同 4.子类在重写父类的方法时,抛出的异常类型范围不能比父类的大,但是可以抛出多个异常,这些多个异常的范围也不长超出父类的异常范围 5.日志文件的使用,使用第三方的log4j.jar,进行程序运行的日志输出 |
||
|
本周总结 |
|||
|
本周总结 |
重点 |
1.程序设计:单例模式,是程序在多次开启时,始终是上一次的开启状态,而不会产生想全新的应用 2.继承,Object是所有类的基类,包括系统类+用户类 3.重点关注的方法:Object.finalize()的学习理解 4.在继承时,需要对方法进行重写时,建议在方法前面加上@Override关键字,避免重写出错,导致新方法的添加 5.子类只能继承一个父类,但是子类可以拥有多个“父类”,即父类继承了父类…… 6.在类的继承中,super()的使用,即:super()表示的是父类的实例,因为父类的构造方法可能带有参数,因此在子类继承父类时,需要在构造方法中使用super()传入参数,从而达到继承 7.关键字protect对父类中属性的控制:父类中显示用protect修饰的属性,在异包的子类中可以访问,但是默认的protect(隐式的)修饰符修饰的关键字不可以访问;而实例化子类的类如果不和父类在同包中,无论如何都访问不到protect修饰的属性 8.在应用继承关系时,父类可以实例化子类,而子类不能实例化父类,因为可能会导致ClassCastException报错,即使是强制转换成子类类型,在运行时会报错ClassCastException 9.继承关系中,实例化时,对于装箱、拆箱的理解 10.接口的编写,接口中的属性必须是静态的,且声明时就应该赋值,一经赋值以后就不可以修改,即finally 11.异常处理:抛出异常或捕获异常并进行处理,多重catch即finally的使用 12.在进行方法的编写时,如果抛出的异常是非runtime异常,这时就需要使用throws对异常进行声明,并且声明的异常类型必须和抛出的异常类型相同 13.子类在重写父类的方法时,抛出的异常的范围不能比父类中方法抛出的异常范围大,但是可以抛出多个异常,范围均应小于父类 14.对于程序运行的日志的输出,使用第三方的jar包,编写相关的代码进行程序执行日志的记录,log4j.jar 15.面向对象编程思想的学习:电脑的组装+人的描述 |
|
|
疑问 |
1.非runtime异常的声明,非runtime的理解 |
||
|
未完成 |
1.面向对象编程思想的学习 2.垃圾回收机制Object.finalize()的学习理解 3.代码块finally,在try-catch中的执行逻辑的学习 4.非runtime的理解学习 5.程序执行日志记录的编写联系 6.super关键字的练习使用 7.程序设计单例模式的编写实践 8.图书系统的重新设计编写 之前未完成集中: 2.在输出double数据类型时,使用DecimalFormat对输出数据格式化 3.之前学习笔记温习 |
||
IT第二十天 - 面向对象编程思想、抽象类、异常处理、程序操作日志记录、本周总结 ★★★的更多相关文章
- 面向对象编程思想(OOP)
本文我将从面向对象编程思想是如何解决软件开发中各种疑难问题的角度,来讲述我们面向对象编程思想的理解,梳理面向对象四大基本特性.七大设计原则和23种设计模式之间的关系. 软件开发中疑难问题: 软件复杂庞 ...
- 面向对象编程思想(前传)--你必须知道的javascript
在写面向对象编程思想-设计模式中的js部分的时候发现很多基础知识不了解的话,是很难真正理解和读懂js面向对象的代码.为此,在这里先快速补上.然后继续我们的面向对象编程思想-设计模式. 什么是鸭子类型 ...
- 面向对象编程思想(OOP)
本文我将从面向对象编程思想是如何解决软件开发中各种疑难问题的角度,来讲述我们面向对象编程思想的理解,梳理面向对象四大基本特性.七大设计原则和23种设计模式之间的关系. 软件开发中疑难问题: 软件复杂庞 ...
- 面向对象编程思想(前传)--你必须知道的javascript(转载)
原文地址:http://www.cnblogs.com/zhaopei/p/6623460.html阅读目录 什么是鸭子类型 javascript的面向对象 封装 继承 多态 原型 this指向 ...
- PHP中面向对象编程思想的3个特征
面向对象编程思想的3个特征: 封装: 无非是一个大的指向思想,目的是为了将一个类设计得更为健壮! 其基本做法是: 尽可能地将一个类的成员私有化,只开放那些必不可少的对外的属性或方法,能private的 ...
- 面向对象编程思想(OOP)(转发)
本文我将从面向对象编程思想是如何解决软件开发中各种疑难问题的角度,来讲述我们面向对象编程思想的理解,梳理面向对象四大基本特性.七大设计原则和23种设计模式之间的关系. 软件开发中疑难问题: 软件复杂庞 ...
- 面向对象编程思想(OOP)总结
本文我将从面向对象编程思想是如何解决软件开发中各种疑难问题的角度,来讲述我们面向对象编程思想的理解,梳理面向对象四大基本特性.七大设计原则和23种设计模式之间的关系. 软件开发中疑难问题: 软件复杂庞 ...
- day22面向对象编程思想
day22面向对象编程思想 1.面向过程 面向过程: 核心是"过程"二字 过程的终极奥义就是将程序流程化 过程是"流水线",用来分步骤解决问题的 面向对象: 核 ...
- java面向对象编程思想的理解
1.我们总说java是一门面向对象编程的语言,那什么是面向对象呢? 我是这样理解的,对象是事物存在的实体,如,猪.狗,花早等都是对象,对象由两部分组成.面向对象编程的三大特点:继承,多态,类是封装对象 ...
随机推荐
- 【课程分享】ASP.NET MVC5&微信公众平台整合开发实战(响应式布局、JQuery Mobile,Windows Azure、微信核心开发)
对这个课程有兴趣的,能够联系我QQ2748165793 基础知识储备 ASP.NET MVC 5基础(6讲) 第一讲-初识ASP.NET MVC并搭建整合开发环境 第二讲-深入MVC开发模式 第三讲- ...
- Java项目打包工具安装失败解决方法
在学习Java的时候我们打包项目但遇到例如以下情况:(提示没有找到java的执行环境! ) 网上眼下有两中的解决方式: (1)选择本地jdk环境; (2)下载Download 可是第一种选择本地老是失 ...
- [01] Preparation - Sitecore Installment
Sitecore CMS 是一套内容管理系统商业软件,其底层平台依托于微软.net技术.由于最近的一个项目采用了这个平台,所以有机会接触到了这个产品. 虽然接触该产品已有一段时间,但总感觉对这个产品缺 ...
- Android应用开发提高篇(3)-----传感器(Sensor)编程
链接地址:http://www.cnblogs.com/lknlfy/archive/2012/02/29/2373420.html 一.概述 Android支持的传感器种类越来越多了,这确实是一件可 ...
- fiddler---使用方法1--抓取手机app包
1.首先fiddler设置
- php 前台数据显示
<pre name="code" class="html"> public function show(){ echo "访问了index ...
- Android 4.4及以上系统下应用的状态栏颜色渐变效果的实现
上一篇转载的博文里讲到了怎么开启状态栏透明的效果,不过如果在有ActionBar的情况下,会出现状态栏透明而ActionBar横亘在状态栏和内容之间的丑陋情况,如下图: 通过百度之后,发现了GitHu ...
- AutoPy首页、文档和下载 - 跨平台的Python GUI工具包 - 开源中国社区
AutoPy首页.文档和下载 - 跨平台的Python GUI工具包 - 开源中国社区 AutoPy是一个简单跨平台的 Python GUI工具包,可以控制鼠标,键盘,匹配颜色和屏幕上的位图.使用纯A ...
- D - 楼下水题(kmp+Manacher)
D - 楼下水题 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu Submit Statu ...
- linux6.2安装mysql
今天安装了一天的mysql,刚开始没想到会这么长时间,也和自己的基础不好有关,现在来说一下我的安装过程. 先说环境:rhel6.2 mysql5.1 在linux中,可能默认已经安装了一个mysql- ...