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 抛出实例化后的异常)- 在方法的声明中需要声明

下周计划:

  1. 字符串
  2. java集合:List,set
  3. java集合:Map集合
  4. IO流

Java面向对象部分小结相关推荐

  1. Java面向对象知识点小结

    再小的帆也能够远航

  2. Java多线程自我小结

    Java多线程自我小结 一.多线程(Thread)的相关概念 1. 进程 2. 线程 3. 线程调度 (1)分时调度 (2)抢占式调度 4. 同步与异步 5. 并发与并行 二.多线程的三种启动方式 1 ...

  3. java面向对象编程基础

    java面向对象编程基础 前言:什么是java 是咖啡飘香的清晨 - 是斯坦福校园意浓情深 - 是James的思想睿智 是剁手党双十一挥舞的利刃 是大数据云计算驰骋的平台 - 是ATM上吐出的钞票 - ...

  4. 5.Java面向对象编程

    文章目录 05 Java面向对象编程 1. 面向过程与面向对象比较 2. 类和对象 2.1 对象的属性和方法 2.2 类的属性和方法 2.3 定义一个类 2.4 创建和使用对象 2.5 对象和类的总结 ...

  5. Java面向对象(6) —— 射击小游戏

    这里做一个射击小游戏,作为对前面Java学习的一个小结. 1.设计 2.知识点总结 主要是在主程序ShootGame.java中引入了一些新知识,swing画图.定时器.鼠标事件处理.其他程序则主要体 ...

  6. java面向对象编程的实现

    目录 前言 包 包访问权限 继承(extends) protected关键字 final 组合 多态 向上转型 方法传参 方法返回 动态绑定 方法重写 重载和重写的区别: 在构造方法中调用重写的方法( ...

  7. java面向对象编程精讲

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.包 1.1导入包中的类 1.2静态导入 1.3将类放到包中 1.4包的访问权限控制 1.5常见的系统包 二.继承 ...

  8. Java面向对象01

    Java面向对象 根据B站up 遇见狂神说的 学习笔记 up视频地址 面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考.最后才对某个分类下的细节进 ...

  9. java面向对象-------静态初始化块

    1.构造方法用于对象的初始化!静态初始化块,用于类的初始化操作,在静态初始化块中不能直接访问非static成员. package java面向对象; /** * 测试静态初始化块 */public c ...

最新文章

  1. oracle加undo+resize,How To resize undo tablespace in Oracle
  2. 可以把阿里云上面的一些介绍和视频都看看
  3. 【目录】shell 编程-xyq
  4. 天谕手游与奥特曼联手,玩家看到有多么激动?
  5. 动态链接库的创建和调用方法
  6. java高并发实战Netty+协程(Fiber)|系列1|事件驱动模式和零拷贝
  7. Java面向对象(4)--封装和隐藏
  8. 企业微信加密消息体_微信公众平台开发者中心安全模式消息体加解密实现
  9. java string范围_字符串索引超出范围? (Java,子字符串循环...
  10. ue4 如何获取端口号_尝试在UE4.22中实现罪恶装备Xrd的卡通渲染
  11. springmvc多文件上传
  12. 剑指offer——面试题58:二叉树的下一个结点
  13. win10开启多用户同时远程登录-很详细
  14. 让我们努力的学习ruby吧
  15. c语言 sin1怎么写,c语言sin30怎么写
  16. 【Python量化】风险平价策略
  17. 明日之后mumu模拟器找不到服务器,MuMu模拟器玩明日之后常见问题汇总
  18. SSO(Single Sign On)系列(三)--CAS单点登录
  19. python break语句作用_Python break语句详解
  20. python制作图片_python制作斗图生成器

热门文章

  1. 通过jquery回显操作(笔记)
  2. 网络编程之如何通过URL获取网页代码
  3. 语音识别学习日志 2019-7-13 语音识别基础知识准备 1{语音基础知识}
  4. MyBatis之使用resultMap实现高级映射
  5. VS2013正在等待所需操作完成
  6. CDH 6 安装服务哈希验证失败 解决方法
  7. 基因大数据:一面是科技,一面是责任
  8. 在DataWorks标准模式下统计个人账号使用资源情况
  9. 前端内存优化的探索与实践
  10. Kubernetes与Docker基本概念与常用命令对照