javan


静态变量,公共变量。
静态不可变,动态可变。

非静态有对象。
在Java中,“动态方法”通常指实例方法(非静态方法),它和静态方法的核心区别可以从以下维度区分:
对比维度 静态方法(static修饰) 实例方法(动态方法,无static修饰)
归属主体 属于类本身,是类的公共资源 属于对象(类的实例),是每个对象的专属行为
调用方式 直接通过“类名.方法名”调用(无需创建对象) 例: StudentUtil.getMaxAgeStudent(list) 必须先创建对象,通过“对象.方法名”调用 例: stu1.getAge() (先new Student得到stu1)
访问成员的权限 只能直接访问静态成员(静态变量、静态方法),不能直接访问实例成员(因为实例成员属于对象,调用静态方法时可能还没有对象) 可以直接访问静态成员 + 实例成员(调用时对象已创建,能关联到对象的实例数据)
内存加载时机 类加载时就会加载到内存(方法区),全局共享 对象被创建时,才会与对象关联(方法本身存在于方法区,但调用时绑定具体对象)
典型使用场景 工具类方法(如 StudentUtil 的获取最大年龄方法)、通用工具逻辑(无需依赖对象数据) 对象的专属行为(如 Student 的 getAge() 方法,需依赖具体学生对象的年龄数据)
结合之前的代码例子:
- StudentUtil.getMaxAgeStudent() 是静态方法:工具类无需创建对象,直接通过类名调用,逻辑不依赖某个具体对象的数据;
- Student.getAge() 是实例方法:每个学生对象的年龄是“专属数据”,必须通过具体的学生对象(如 stu1 )调用,才能获取该对象对应的年龄。
静态直接用类访问,动态是对象。

继承

相同的内容可以写进父类,共同的特质。
子类是父类中的一种,也不能看到相同的就写进父类

继承的特点。

私有类只能在本类中访问

