首页 > 编程语言 >闭关Java第六天JavaSE完结

闭关Java第六天JavaSE完结

时间:2023-03-29 13:57:49浏览次数:27  
标签:Java 自定义 方法 接口 第六天 子类 JavaSE 异常

  1. 父类引用指向子类对象
  2. 把子类转换成父类,向上转型
  3. 把父类转换成子类,向下转型,需要强转
  4. 强制转换会丢失精度(子类转为父类可能会丢失方法)
  5. 方便方法的调用,减少重复的代码!简洁

static关键字详解

静态属性

静态的变量可以在类中被任意共享

静态方法

非静态方法可以直接访问静态方法

静态代码块

是最先执行的,但只执行一次,不可以调用

静态代码块最先执行-->匿名代码块--->构造方法最后执行

匿名代码块的作用:初始化值

静态导入包

image-20230329095834139

可以直接使用Java中方法

抽象类

特点:

  1. 不能new这个抽象类,只能靠他的子类实现:约束!

  2. 抽象类中可以有普通方法

  3. 抽象方法必须在抽象类中

    抽象的抽象:约束

接口

  • 普通类:只有具体的实现
  • 抽象类:具体的实现以及规范 不能new,需要子类来实现
  • 接口:只有规范!自己无法写方法~专业的约束 约束和现实分离:面向接口编程~

接口的本质就是契约,像是法律一样,制定好大家要遵守

接口的作用

  1. 约束
  2. 定义一些方法,让不同的人实现
  3. 接口默认的方法都是 public static
  4. 接口不能被实例化
  5. 接口可以实现多个接口
  6. 必须重写接口的方法

内部类

  1. 可以获得外部类的私有属性
  2. 需要先new外部类,再用外部类来实例化
  3. 一个java类中可以有多个class,但是只能有一个public class

异常机制

什么是异常

就是在运行过程中出现的意外,遇到的一些异常问题(Exception)

如:文件找不到、网络连接失败、非法参数

异常体系结构

java把异常当作对象来处理,并定义了一个基类java.lang.Throwable作为所有异常的超类

在Java API中已经定义了许多异常类,这些异常类分为两大类:Error和Exception

Error和Excepton的区别:

Error通常是灾难性的致命错误,而Exception通常是可以被程序处理的,并且在程序中尽可能的去处理这些异常

异常处理机制

  • 抛出异常
  • 捕获异常
  • 异常处理的五个关键字

try,catch,finally,throw,throws

假设要捕获多个异常,要从小到大排序

自定义异常

  • 使用Java内置的类中可以描述在编程时出现的大部分异常情况,除此之外,用户还可以自定义异常,用户自定义异常只需要继承Exception类即可

  • 在程序中使用自定义类,大体可以分为以下几种:

    • 创建自定义异常类
    • 在方法中通过throw关键字抛出异常对象
    • 如果在当前抛出异常的方法中处理异常,可以用try-catch捕获并处理,否则在方法中声明出通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作
    • 在出现异常方法的调用者中捕获并处理异常

标签:Java,自定义,方法,接口,第六天,子类,JavaSE,异常
From: https://www.cnblogs.com/nastudy/p/17268638.html

相关文章

  • java线程池详解
    为什么要使用线程池ExecutorService利用池化线程执行任务,Executors的工厂方法可以创建线程池线程池解决了两个问题:减少每个线程创建消耗的时间,复用线程提供管理线程,资......
  • 初识java
    目录JavaSE认识JavaJava特性Java核心机制垃圾回收机制跨平台原理常用DOS命令注释JavaSE认识JavaJava特性跨平台/可移植性(一次编译到处运行)、安全性、面向对象、简单性......
  • 存储动态列的结果集(行列互转)--java、mybatis、orcale
    业务上需要存储动态列的数据通过行列互转的方式实现数据库中动态列的几种设计思路使用数据库DDL进行动态创建使用数据库预留字段(宽表)使用数据库中的json数据......
  • Exception in thread "main" javax.mail.MessagingException: Could not connect to S
    写一个QQ邮件发送,运行时报下面的错误。  百度翻译是:线程“main”javax.mail.MessagingException异常:无法连接到SMTP主机:SMTP.qq.com,端口:465;嵌套异常为:javax.net.ssl.s......
  • 每日总结-23.3.29-利于云服务器和javaweb简单实现一个网站
    3月29日总结今日使用云服务器和tomcat实现了简单网站的搭建。使用工具(个人体验,仅作参考,使用其他版本或工具应该也行):1.移动云新人体验免费云服务器一台。(个人专享:通......
  • 初识Java
    JavaSE认识JavaJava特性跨平台/可移植性(一次编译到处运行)、安全性、面向对象、简单性、高性能、分布式、多线程、健壮性。Java核心机制垃圾回收机制不需要程序员去管......
  • java中的循环语句
    有些程序段在某些条件下重复执行多次,称为循环结构程序。Java提供了3种循环语句实现循环结构,包括while语句、do-while语句、for语句。它们的共同点是根据给定条件来判断是否......
  • JavaScript Promises, async/await
    JavaScriptPromises,async/await这篇博客不是讲如何使用Promise,是一个学习总结。是我自己对Promise的理解。newPromise()的时候,传一个executor给Promise.......
  • Java 生成各种 PDF 实战方案(图片、模板、表格)
    刚接到了一个需求,生成一个pdf,一开始以为挺简单的,通过模板生成嘛,我也发过相应的文章,根据模板直接生成pdf,响应到前端或者根据模板生成pdf,直接指定下载位置,这两种方案都可以,......
  • Java入门_二维数组_第二题_杨辉三角
    题目杨辉三角要求使用二维数组打印一个10行的杨辉三角思路第i行输出i个数。arr3[i][j]=arr3[i-1][j]+arr3[i-1][j-1];总结如上规律,代码实现并输......