JavaSE-day10

本文详细介绍了Java中的三大修饰符——抽象(abstract)、最终(final)和静态(static)。抽象类用于定义接口或者部分实现,其可以包含抽象方法,必须由子类完全实现。最终类或方法不允许被继承或重写,常用于提供不可变对象。静态修饰符用于声明类的静态属性和方法,它们独立于类的实例,可以直接通过类名访问。了解这些修饰符对于深入理解Java面向对象编程至关重要。
摘要由CSDN通过智能技术生成

三大修饰符

抽象的

        概念:无法描述的,无法实例的

        关键字:abstract

可以修饰哪些东西?

        方法

                语法格式:

                        访问权限修饰符  abstract  返回值类型  方法名(){

                        }

                注意:

                        1、抽象方法没有方法体

                        2、有抽象方法的类一定是抽象类

          类

                语法格式:

                        访问权限修饰符  abstract  class  类名{

                        属性

                        方法

                        构造函数

                        }

        注意:

                1、子类继承于抽象类,要么重写抽象类的所有方法,要么自己也是抽象类

                2、抽象类无法直接创建对象

                3、抽象类中不一定有抽象方法

最终的

        概念:无法修改的,最后的

        关键词:final

可以修饰什么东西?

        类

                意义:最终类,不能被别的类继承

                语法:

                       访问权限修饰符  final  class  类名  extends  父类名{

                                属性

                                方法

                                构造函数

                        }

        方法

                意思:不可被重写

                语法:

                        访问权限修饰符  final  返回值类型  方法名(形参列表){

                        方法体

                        return  xxx;

                        }

        属性

                意思:不可被修改,称为常量,常量名全大写

                语法:

                        访问权限修饰符  final  数据类型  属性名;

                final修饰的变量就是常量

        局部变量

                意思:不可被修改,称为常量,常量命名全大写

                语法:

                        final  数据类型  属性名;

                final修饰的变量就是常量

        局部变量

静态的

        概念:该类所有对象共有的,属于类

可以修饰什么东西?

        属性

                语法:访问权限修饰符  static  数据类型  变量名;

                static修饰的属性称为静态成员变量

                注意:

                        1、static修饰的属性属于该类的所有对象,一个对象对其进行修改,所有对象的该属性都将被修改

                        2、static修饰的属性多了一种调用方式

                                语法:

                                                类名.属性名;

                                                类名.属性名 = 值;

                                原来:

                                                对象名.属性名;

                                                对象名.属性名 = 值;

        方法:

                语法:

                        访问权限修饰符  static  返回值类型  方法名(形参列表){

                                方法体

                        }

                        static修饰的方法称为静态方法

                注意:

                        1、静态方法中只能直接使用静态成员(静态属性,静态方法)

                        2、static修饰的方法多了一种调用方式      

                                语法:

                                                类名.方法名(实参列表);

                                原来:

                                                对象名.方法名(实参列表);

                        3、静态方法中不能使用this与super

        代码块

                        静态代码块

代码块

        概念:一块代码

        语法:

                {

                        代码

                }

        调用:

                每次调用该类构造函数创建对象时,由系统调用该类的普通代码块,在执行构造函数千调用

        普通代码块:

                类中方法以外

        与static结合使用

                语法;   static {

                                }

        调用:

                类加载时调用,所以只会调用一次

类的加载时机:

        第一种情况:第一次创建该类对象时

        第二种情况:第一次创建子类对象时

        第三种情况:使用类名调用本类静态属性

        第四种情况:使用类名调用本类静态方法

        第五种情况:使用第一次使用反射获取该类对象时

                Class.forName("包名.类名");

                注意:类只加载一次

一个类有静态与非静态属性,先加载静态属性

在继承关系:先加载父类静态,在加载子类静态,父类非静态,子类非静态

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值