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

下周计划:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517671.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

音视频应用驶入快车道 开发者如何快速追赶这波技术红利?

受访人 | 融云CPO 任杰 作者 | June 图片来源 | 视觉中国 毋庸置疑&#xff0c;随着5G时代的到来&#xff0c;实时音视频技术将会上升到一个全新的高度。 5G时代发生巨变的远远不止网速&#xff0c;凭借5G网络的高带宽&#xff0c;低延迟和大并发性&#xff0c;音视频应用场…

Mysql 8.0 安装教程 Linux Centos7

文章目录一、软件下载上传1. 下载2. 上传二、软件安装配置2.1. 解压mysql2.2. 创建data文件夹 存储文件2.3. 创建用户组以及用户和密码2.4. 授权用户2.5. 切换到bin目录下2.6. 编辑my.cnf文件2.7. 添加mysqld服务到系统2.8. 授权以及添加服务2.9. 启动mysql2.10. 查看启动状态2…

重磅发布 | 全球首个云原生应用标准定义与架构模型 OAM 正式开源

Kubernetes 项目作为容器编排领域的事实标准&#xff0c; 成功推动了诸如阿里云 Kubernetes &#xff08;ACK&#xff09;等云原生服务的迅速增长。但同时我们也关注到&#xff0c;Kubernetes 的核心 API 资源比如 Service、Deployment 等&#xff0c;实际上只是应用中的不同组…

今天的作业 --- 去重

使用Set的写法: public String myMethod1(String str){ //Set方法Set setnew HashSet();for (int i 0; i < str.length(); i) {set.add(str.charAt(i));}String s "";for (Object o :set) {so;}return s;}由于Set集合内不会存储重复的字符,所以…

2020 AI 产业图谱启动,勾勒中国 AI 技术与行业生态

《2020年国务院政府工作报告》提出&#xff0c;重点支持「两新一重」建设。其中「两新一重」中的第一个「新」&#xff0c;就是新基建&#xff0c;而人工智能是新基建的重要组成部分。新基建首次被纳入政府工作报告后&#xff0c;各大科技厂商纷纷押注&#xff0c;重金投向「新…

从零开始入门 K8s | Kubernetes 网络概念及策略控制

一、Kubernetes 基本网络模型 本文来介绍一下 Kubernetes 对网络模型的一些想法。大家知道 Kubernetes 对于网络具体实现方案&#xff0c;没有什么限制&#xff0c;也没有给出特别好的参考案例。Kubernetes 对一个容器网络是否合格做出了限制&#xff0c;也就是 Kubernetes 的…

SwitchHosts

SwitchHosts 是一个管理、切换多个 hosts 方案的工具。 它是一个免费开源软件。 下载地址 https://github.com/oldj/SwitchHosts/releases

开放计算架构:蚂蚁金服是如何用一套架构容纳所有计算的?

蚂蚁金服在过去十五年重塑支付改变生活&#xff0c;为全球超过十二亿人提供服务&#xff0c;这些背后离不开技术的支撑。在 2019 杭州云栖大会上&#xff0c;蚂蚁金服将十五年来的技术沉淀&#xff0c;以及面向未来的金融技术创新和参会者分享。我们将其中的优秀演讲整理成文并…

一个神秘URL酿大祸,差点让我背锅!

作者 | 编程技术宇宙责编 | Carol封图 | CSDN 付费下载自视觉中国神秘URL我叫小风&#xff0c;是Windows帝国一个普通的上班族。上一回说到因为一个跨域请求&#xff0c;我差点丢了饭碗&#xff0c;好在有惊无险&#xff0c;我的职场历险记还在继续。“叮叮叮叮~~~~”&#xff…

支付宝王益:40岁写30年代码是一种什么体验?

对于蚂蚁金服研究员王益而言&#xff0c;2019年是个颇有纪念意义的年份。今年他整40岁。从10岁开始&#xff0c;写代码整30年。这30年来&#xff0c;他当过“不务正业”的学生&#xff0c;创纪录地在大一就考下系统分析员&#xff0c;“单枪匹⻢”闯荡过从国内到硅谷的多家知名…

牛!2020年,这项技术将获得1,000,000,000元人民币注资!

在今年的特殊情况下&#xff0c;国外的AI明星公司轰然倒塌&#xff0c;一夜之间倒闭。又有某AI大厂一年亏了60亿……就像看破楼市一样&#xff0c;我们不由心想&#xff1a;“AI&#xff0c;会不会从头到尾就是一场泡沫&#xff1f;”但是&#xff0c;最近国家发的“定心丸”来…

基于阿里云的 Node.js 稳定性实践

前言 如果你看过 2018 Node.js 的用户报告&#xff0c;你会发现 Node.js 的使用有了进一步的增长&#xff0c;同时也出现了一些新的趋势。 Node.js 的开发者更多的开始使用容器并积极的拥抱 ServerlessNode.js 越来越多的开始服务于企业开发半数以上的 Node.js 应用都使用远端…

Knative 实战:基于阿里云 Kafka 实现消息推送

在 Knative 中已经提供了对 Kafka 事件源的支持&#xff0c;那么如何在阿里云上基于 Kafka 实现消息推送&#xff0c;本文给大家解锁这一新的姿势。 背景 消息队列 for Apache Kafka 是阿里云提供的分布式、高吞吐、可扩展的消息队列服务。消息队列 for Apache Kafka 广泛用于…

“编程能力差,90%输在了数学上!”CTO:多数程序员都是瞎努力!

01从未得到过重视的问题一流程序员学数学&#xff0c;二流程序员学算法&#xff0c;低端看高端就是黑魔法。可能有人以为这就是个段子&#xff0c;但有过工作经验的都知道&#xff0c;这其实就是程序员的真实写照&#xff01;想一想&#xff0c;我们学习、求职、工作的场景中&a…

没有写入hosts文件权限

文章目录1. 效果图2. 现象3. 解决方案4. 赋予权限5. 成功截图1. 效果图 2. 现象 3. 解决方案 4. 赋予权限 5. 成功截图

6万人同时离场,竟然一点都不挤?原来用了这个神器

阿里妹导读&#xff1a;阿里20周年年会上&#xff0c;全球6万阿里人 "回家"&#xff0c;用一种特别的方式为阿里庆生。年会现场&#xff0c;每位阿里员工人手一只白色IoT手环&#xff0c;这个由102颗LED小灯组成的手环&#xff0c;随着现场音乐、节目节奏变幻不同色彩…

独家揭秘 | 阿里怎么做双11全链路压测?

阿里妹导读&#xff1a;全链路压测是阿里的首创&#xff0c;我们将从工作内容、操作过程、运行总结等多个方向来介绍下阿里内部典型电商活动&#xff08;如双11准备&#xff09;&#xff0c;以给大家展示一个完整的压测流程&#xff0c;帮助更多的企业和用户更好的完成性能测试…

读取模式错误,计算引擎操作复杂……面对Hadoop这些问题该如何应对?

作者 | Monte Zweben译者 | 天道酬勤&#xff0c;责编 | Carol封图 | CSDN 付费下载自视觉中国Apache Hadoop于2006年出现在IT领域&#xff0c;它使用商品硬件&#xff0c;为组织提供前所未有的数据量存储能力。不仅解决了数据集的大小问题&#xff0c;还解决了数据类型问题&am…

Nacos 集群集成SpringBoot2.x 微服务_02

文章目录一、SpringBoot2.x 微服务1. 依赖引入2. bootstrap.yaml配置3. 测试类二、nacos配置规则2.1. 登录nacos2.2. 配置规则三、测试验证3.1. 启动项目3.2. 验证一、SpringBoot2.x 微服务 1. 依赖引入 <parent><groupId>org.springframework.boot</groupId&g…

蚂蚁“备战”TPC-C这1年

阿里妹导读&#xff1a;1年前OceanBase团队开了个会&#xff0c;定了个小目标&#xff0c;接下来的一年中这群工程师闭关攻坚。从掉头发到睡几个小时就跳起来看邮件&#xff0c;更甚至有人天天焦虑地捧着手机等邮件。 1年后&#xff0c;蚂蚁金服自研数据库OceanBase登上TPC-C排…