本文最后更新于 2024-10-09,文章内容可能已经过时。

Java SE基础整合

[TOC]

封装

  1. 程序追求“高内聚,低耦合”

  2. 封装可以使用set方法和get方法

  3. 构造方法

    有参构造:直接以类名为方法带有参数的构造方法

    eg:

    class main{
        //方法的重载:有参数和无参数的使用
        public main(){}//无参构造
        public main(int a){}//有参构造
        public main(String a,int b){}//方法的重载
    }
    

    无参构造:以类名为方法名的不带有参数的构造方法

继承

  1. 继承的关键字: extends

  2. Java中只有单继承,没有多继承;

  3. 子类拥有父类所有的东西,但是是有的类不能被继承

  4. Object是所有类的父类,直接继承Object

  5. 继承中使用的关键字:super

    super:调用所有的父类属性的方法
    eg:

    public class Father{
        //方法体
    }
    public class son extends Father{
        //方法体
    }
    
  6. 重写alt+insert

  7. 需要有继承关系,子类重写父类

  8. 方法名必须相同,方法体不同

  9. 参数列表必须相同

  10. 修饰符可以扩大:public > protected > default > private

  11. 抛出的异常:可以缩小,但是不能扩大

  12. 子类重写父类,调用的是子类重写的方法

    一旦有方法重写,则重写的方法的权重大于父类方法的权重

    多态

    分类: 重写多态和重载多态

    重载多态(编译时多态):编译时已经确定好了。

    重写多态(运行时多态):动态绑定。

    向上转型:子类引用的对象转换为父类类型称为向上转型。通俗地说就是是将子类对象转为父类对象。此处父类对象可以是接口。

    public class Animal {
       public void eat(){
           System.out.println("animal eatting...");
       }
    }
    
    public class Cat extends Animal{
    
       public void eat(){
    
           System.out.println("我吃鱼");
       }
    }
    
    public class Dog extends Animal{
    
       public void eat(){
    
           System.out.println("我吃骨头");
       }
    
       public void run(){
           System.out.println("我会跑");
       }
    }
    
    public class Main {
    
       public static void main(String[] args) {
    
           Animal animal = new Cat(); //向上转型
           animal.eat();
    
           animal = new Dog();
           animal.eat();
       }
    
    }
    
    //结果:
    //我吃鱼
    //我吃骨头
    

    注意:

    转型过程遇到的问题:

  13. 向上转型时,子类方法会丢失。

  14. 子类引用不能指向父类对象。

    向上转型的好处:

  15. 减少代码的复杂性,让代码更加简洁。

  16. 提高系统的扩展性。

    向下转型:与向上转型相对应的就是向下转型了。向下转型是把父类对象转为子类对象。(请注意!这里是有坑的。)