JavaSE之面向对象开发总结

1. 包装的定义与使用(文件夹)

包的本质实际上就是文件夹。
打包编译命令:

   javac -d . 类名.java

: 表示生成目录,根据package的定义生成;
. 表示在当前所在目录生成子目录。

1.1 包的导入

import   

自动匹配编译顺序:(在当前目录下按照主类的使用情况自动编译)

javac -d . ./*.java

1.2 系统的常用包

  1. java.long :系统的常用基础类(String、Object、包装类),JDK1.1之后导入
  2. java.util:Java提供的工具程序包(集合类,ArrayList 、HashMap),需要手工导入
  3. juc:java.util.concorrent:并发程序包

1.3访问控制权限

private < default(包访问权限) < protected(继承访问权限) < public

2.单例设计模式&多例设计模式(重要)

定义:一个类只允许产生一个实例化对象

  1. 对象如何产生?通过类的构造方法
  2. 要想限制对象的产生?通过构造方法限制

2.1 饿汉式单例:上来就new

class Singleton{
    private static final Singleton SINGLETON = new Singleton();
    //构造方法私有化,类外部无法实现实例化
    private Singleton(){}
    //对象方法
    public static Singleton getSingleton(){
        return SINGLETON;
    }
}

2.2 懒汉式单例:用时再new

class Singleton {
    private static Singleton SINGLETON;

    //构造方法私有化,类外部无法实现实例化
    private Singleton() {
    }

    //对象方法
    public static Singleton getSingleton() {
        if (SINGLETON == null) {
            SINGLETON = new Singleton();
        }
        return SINGLETON;
    }
}

2.3 多例模式(知道概念)—— 有限个数对象

所谓的多例只是比单例多了一些实例化对象而已。

3.异常

异常的继承类结构:
在这里插入图片描述

  1. Error:Error类描述Java运行时内部错误与资源耗尽错误。应用程序不抛出此类异常,这种内部错误一旦出现,除了告知用户并使程序安全终止之外,别无他法。

  2. RuntimeException(运行时异常):由于程序错误导致的异常。

  3. IOException:程序本身没有问题,但由于出现I/O问题导致的异常(例如:打开一个并不存在的文件)

  • 非受查异常:继承于Error与RuntimeException类的所有异常子类称为非受查异常(不强制用户进行异常处理)
  • 受查异常:Exception以及IOException子类属于受查异常(强制用户进行异常处理)

添加异常快捷键,选中要添加的地方:Ctrl+Alt+t

throws:用在方法上,明确表示本方法可能产生异常,并且不处理,放回给调用方处理。
throw:

public static void main (String[] args){
     try {
         System.out.println(div(10,0));
     } catch (Exception e) {
         e.printStackTrace();
     }
}

public static int div(int x, int y) throws Exception{
     return x/y;
}

报错:首先看错误最前面
java.lang.ArithmeticException: / by zero
at www.abnormal.Test.div(Test.java:18)
at www.abnormal.Test.main(Test.java:6)

3.1异常处理格式

为了保证程序出现异常后也能正常执行下去,需要进行异常处理。
语法如下:

    try {
        //有可能出现异常的语句
    }[catch (异常类 对象)......]
        //出现异常后的解决方案
    }[finally]{
        //异常出口,无论是否产生异常,均会执行finally代码块
        //即便try、catch语句中存在return语句,也会在return之前执行finally代码块
    }

3.2 thorws:用在方法

明确表示此方法会产生异常但是方法内部不处理,将异常抛回给调用处。

3.3 thorw :用在方法

由用户产生异常类对象而非JVM产生。一般与自定义异常搭配使用。

异常错误网站https://stackoverflow.com/

4.断言assert

语法:

assert  布尔表达式 : "返回false执行的代码块"

当断言返回false时会抛出异常。

java断言开启参数(JVM参数) 为-ea,默认断言关闭。
IDEA开启断言的方法:
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_40933663/article/details/84668293
今日推荐