OOP,重写与重载,异常处理机制,多线程,集合框架,IO流 -- Java基础复习

面向对象(OOP)

面向对象编程语言拥有如下几个重要的基本特性:
  1. 万物皆为对象(任何事物都可以表示为程序中的对象)
  2. 每个对象都拥有其类型(类[class],在这里 就是 类型 的同义词)
面向对象的3大基本特点:

封装(Encapsulation)
封装是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节;

继承(extends)
继承是使用已存在的类的定义作为基础建立新类的技术. 新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类;通过使用继承,我们能非常方便的复用代码,但是值得注意的是:继承会提高代码耦合度

多态(Polymorphism)
多态是同一个行为具有多个不同表现形式或形态的能力;多态就是同一个接口,使用不同的实例而执行不同操作;例如:

Animal animal_cat = new Cat();
Animal animal_dog = new Dog();
// --- 同一个接口(Animal)
// --- 不同实例 new Cat(),new Dog()

这里涉及到方法的重写,戳这里进行了解;

重写与重载

重写(Override)

重写是子类对父类的允许访问的方法的实现过程进行重写编写,且返回值和形参都不能改变. 子类只在需要时重写父类方法;

重载(Overload)

重载是在一个类中,方法名相同,而参数不同,返回类型可以相同,也可以不相同(最常用在构造器的重载);被重载的方法必须改变参数列表(参数个数或类型或顺序不一样);

构造方法

每个类都有构造方法,如果没有为类定义构造方法的话,Java编译器将会为该类提供一个默认构造方法;在创建对象时,至少调用一个构造方法;构造方法必须与类重名,例如:

public class Test{
    // --- 编译器默认提供的构造方法;
    public Test(){

    }

    // --- 自己重载写的构造方法;
    public Test(String name){

    }
}

作用:创建对象时调用构造方法,为对象执行初始化;

异常处理机制

Java异常

抛出异常

在方法内抛出异常:
throw new Exception();
在方法上抛出(声明)异常,可同时抛出多个:
public void test() throws Exception{}

捕获异常

关键字:try – catch – finally

try{
    // --- 可能出现异常的代码
}catch(Exception e){
    e.printStackTrace();
    // --- 捕获异常后执行的代码,无异常则不执行
}finally{
    // --- 无论是否发生异常都会执行的代码
}

注意:trycatch 代码块中有 return 语句时,finally 中的代码块仍然执行(也就是 finally 中的代码块要先于 trycatchreturn 语句执行),参考戳这里

多线程

作用:充分利用CPU资源;
Java-Thread
如何创建一个线程?(三种方式)

  1. 实现 Runnable 接口

    // --- 实现Runnable接口来创建一个线程
    public class ThreadTwo implements Runnable{
        // --- 重写run方法
        public void run(){
            System.out.println("线程2正在运行...");
        }
        // --- start方法
        public void start(){
            System.out.println("线程2准备就绪, 获取到CPU资源即可执行run方法");
        }
    }
    
    public class Test(){
        public static void main(String args[]){
            ThreadTwo t = new ThreadTwo();
            t.start();
        }
    }
  2. 继承 Thread

    // --- 继承Thread类来创建一个线程
    public class ThreadTwo extends Thread{
        // --- 重写run方法
        public void run(){
            System.out.println("线程2正在运行...");
        }
        // --- start方法
        public void start(){
            System.out.println("线程2准备就绪, 获取到CPU资源即可执行run方法");
        }
    }
    
    public class Test{
        public static void main(String arg[]){
            ThreadTwo t = new ThreadTwo();
            t.start();
        }
    }
  3. 通过 CallableFuture 创建线程
    没用过,不敢误人子弟详情可以参考,这里

集合框架

Collection:
Collection

Map:
Map

IO流

IO流

最后,感谢 菜鸟教程,本文很多地方都是借鉴和参考了这个网站

Java教程 | 菜鸟教程

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值