11、面向对象编程-2

    技术2025-04-22  31

    一、static关键字

    1、static变量

    调用方法:类名.属性名static方法不能访问非静态成员内存分配:

    static变量与非静态变量的区别:

    区别static变量非静态变量份数1份每个对象1份内存中位置元空间(metaspace)堆创建时间加载类创建对象调用方式类名.变量名对象名.变量名生命周期与类一致与对象一致

    2、static方法

    作用:访问static方法/变量

    调用方式:类名.方法名

    static方法不可以访问:

    不可以访问非静态方法不可以访问非静态变量不可以访问this

    理解:加载类的时候就加载静态变量和静态方法,此时可能还没有创建对象,所以非静态变量和非静态的方法还没有分配空间,无法访问

    3、static代码块

    位置:类中数量:多个执行顺序:依次执行执行时间:第一次加载类的时候执行,只执行一次作用:给静态变量赋初始值。实际开发中使用比较多,一般用于执行一些全局性的初始化操作,比如创建工厂、加载数据库初始信息。

    二、package和import

    1、package注意事项:

    包名:域名倒着写即可,再加上模块名,便于内部管理类。包名一律小写。写项目时都要加包,不要使用默认包。

    2、import:便于编写代码,提高可维护性。

    3、Idea生成文档注释

    三、封装性

    1、权限修饰符

    private:本类中使用default:本包中使用protected:本包及其他包下的子类public:所有包

    类的成员处理:一般用private修饰,通过set,get方法修改、获取(boolean变量通过is获取)

    2、封装的优点

    提高代码的安全性提高代码的复用性高内聚:封装细节,便于修改内部代码,提高可维护性低耦合:简化外部调用,便于扩展协作‘

    四、继承性

    1、继承作用

    子类继承父类,可以得到父类的全部属性和方法 (除了父类的构造方法),但不见得可以直接访问(比如,父类私有的属性和方法)。

    2、方法重写(override)

     

    修饰符

    返回值

    方法名 

                                   参数

    抛出异常

    重载

    无关

    无关

    相同

                                   不同

    无关

    重写

    大于等于

    小于等于

    相同

    基本数据类型:相同

    引用数据类型:小于等于

    小于等于

     

     

     

    Processed: 0.017, SQL: 9