java重载、重写、static、和final

来源:互联网 发布:建立数据系统技术 编辑:程序博客网 时间:2024/06/08 04:06

一、重写

存在于子类和父类中的两个方法,重写被调用的时候,需要看new出来的对象,比如一个学生类继承一个person类,如果在学生类中方法被重写,如果new后面是学生类的话,就会调用学生类的方法,而不去调用父类。

二、重载和重写的不同点

重写:

1.1   发生在父子类中,方法名相同,参数列表相同,方法体不同

1.2   遵循运行期的绑定,根据对象的类型调用方法

重载:

1.1   发生在一个类中,方法名相同,参数列表不同,方法体不同

1.2   遵循编译期的绑定,分局引用的类型绑定调用方法

三、访问控制修饰符

public:公开化,任何类都能调用

private:只有在本类中才能调用

protected:只有在子类,本类和相同的package中才能使用

默认的类型:在本类和相同的package包中都能使用

四、static(静态类)

1.静态变量:存在于方法区,只有一份,通过类名.这个变量来使用,当想实例化比较多的对象的时候可以使用,这就就可以对new出来的对象都赋相同的值

classStudent{

Stringname;

intage;

static String  className}

只要实例化一个对象出来,className只要赋值,下面只要再继续实例化其他对象className都是之前实例化的值,或者你也可以修改

2.静态方法:存在方法区,只有一份,也是通过类名.方法名来使用,何时用:方法的操作仅与参数相关,而与对象无关使用,和静态变量差不多,静态变量类似于属性,常用语工具方法。

3.静态块:static{}

1.1.1         由static修饰

1.1.2         在类被方法区加载为class期间自动执行,类只被加载一次,静态块也被执行一次

1.1.3         何时使用:常常用于加载/初始化静态资源(图片,视频,音频

csgo中加载的地图,手榴弹 只是一张图片,只加载一次

dust2服务器中只有一张地图

hello.MP3在网易云中只有一份---静态资源

冰与火之歌第六季第一集.avi---静态资源

五、final

修饰变量:定义之后就不能变了。初始化有两种方式:在定义的时候或者在构造方法后进行初始化

修饰方法:方法就不能被重写

修饰类:类就不能被继承




1 0