← 返回首页
Java学习

4.再识Java

2026-09-19·1 次浏览
4.再识Java

1 面向对象

1.1 Object类

Object是JDK中提供的一个类,位于java.lang包中,该类是所有类的直接父类或者间接父类,无论是JDK的类,还是开发者自定义的类,以及第三方框架工具中的类,都是Object的直接或者间接子类

1.1.1 重写Object类的方法

方法 描述
public String toString() 以字符串的形式返回该类的实例化对象信息
public boolean equals(Object object) 判断两个对象是否相等
public native int hashCode() 返回对象的散列码

native修饰的叫做本地方法,什么是本地方法呢?

Java无法完成的一些操作,由其他语言c++来完成,Java只是定义,C++具体实现。

hashcode方法返回一个对象的散列值,这个值是由对象的内存地址结合对象内部信息得出的

1.2 包装类

8种基本数据类型

引用类型

基本数据类型的数据不是对象,引用类型次啊是对象

某些场景需要通过对象来描述基本数据类型

通过包装类来解决这一问题,包装类是Java提供的一组类,专门用来创建8种基本数据类型对应的对象

基本数据类型 包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

1.2.1 装箱和拆箱

装箱是指将基本数据类型转为对应的包装类对象

拆箱是指将包装类对象转为对应的基本数据类型

2 接口

2.1 什么是接口

面向接口编程:就是将程序的业务逻辑进行分离,以接口的形式去对接不同的业务模块

结果只串联不是先,真正的业务逻辑交给接口的实现类来完成,当用户的需求发生变更的时候,只需要切换不同的实现类,而不需要修改串联模块的接口,减少对系统的影响

实现程序的解耦合

降低程序的耦合度,耦合度是指不同模块连接的紧密程度

2.2 如何使用接口

Java使用class来标识类,使用interface来标识接口

2.3面向接口编程的实际应用

场景:某工厂生产产品A,主要由设备A来完成生产,用程序模拟这个过程

java Copy
public class Factory {
    private EquipmentA equipment;
    public EquipmentA getEquipment(){
        return equipment;
    }
    public void setEquipment(EquipmentA equipment){
        this.equipment = equipment;
    }
    public void work(){
        System.out.println("开始生产.....");
        this.equipment.work();
    }
}
java Copy
public class EquipmentA {
    public void work(){
        System.out.println("设备A运行,生产产品A");
    }
}
java Copy
public class test {
    public static void main(String[] args) {
        EquipmentA e = new EquipmentA();
        Factory factory = new Factory();

        factory.setEquipment(e);
        factory.work();
    }
}

新订单要求生产产品B,需要使用设备B来生产

使用接口来实现

java Copy
public class Factory {
    private Equipment equipment;
    public Equipment getEquipment(){
        return equipment;
    }
    public void setEquipment(Equipment equipment){
        this.equipment = equipment;
    }
    public void work(){
        System.out.println("开始生产.....");
        this.equipment.work();
    }
}
java Copy
public interface Equipment {
    public void work();
}
java Copy
public class EquipmentA implements Equipment {
    public void work(){
        System.out.println("设备A运行,生产产品A");
    }
}
java Copy
public class EquipmentB implements Equipment {
    public void work(){
        System.out.println("设备B运行,生产产品B");
    }
}
java Copy
public class test {
    public static void main(String[] args) {
        EquipmentA a = new EquipmentA();
        EquipmentB b = new EquipmentB();
        Factory factory = new Factory();

        factory.setEquipment(b);
        factory.work();
    }
}
── 完 ──

评论

还没有评论,来说点什么
发表评论
0 / 1000