super.this.static.final

来源:互联网 发布:js .index 编辑:程序博客网 时间:2024/05/01 05:36
1.super 关键字的作用:
语法: super(实参);
作用:通过子类的构造方法调用父类的构造方法,普通方法和属性
语法规则:一个构造方法第一行,如果没有this(..),也没有显示去调用super();系统会默认调用super( );
super(..)和this(..)是不能共存;
注意:super(..);的调用,只能放在构造方法的第一行
通过子类的构造方法去调用父类的构造方法
作用:给当前子类对象中的父类特征赋值
可以从子类中调用父类中的构造方法、普通方法和属性

一是调用父类方法,二是调用父类构造器

2.this关键字
①表示类中的属性
②可以使用this调用本类的构造方法
③this表示当前对象
1⃣️当成员变量局部变量重名的时候,可以使用this指定调用成员变量

   1.可以使用强调本类中的方法
   2.表示类的属性            this.属性名=参数;
   3.可以调用本类的构造方法(只有构造方法是被优先调用的,所以使用this调用构造方法必须也只能放在构造方法的第一行)          this()
   4.表示当前的对象,对象的比较,可以添加一个compare的方法,比较对象地址和属性值是否相等。
     普通方法中,this总是指向调用方法的对象。 
     构造方法中,this总是指向正要初始化的对象

一是调用隐式参数 ,二是调用该类其他构造器


3.static关键字
①.如果使用一个类分别开辟栈内存及堆内存,在堆内存中保存对象的属性,每个对象有自己的属性,如果现在有些属性希望被所有的对象共享,则必须将其声明为static属性,使用static声明属性称为全局属性
如果一个类中的方法
   Static修饰符可以修饰:变量、方法和代码块
  用Static修饰的变量和方法,可以采用类名直接访问
  用Static声明的代码块为静态代码块,JVM第一次使用类的时候,会执行静态代码块中的内容
     类名称.static属性
  非static声明的方法可以去调用static声明的属性或方法,但static声明的方法是不能调用非static类型声明的属性或方法  
     static是不能调用任何非static内容,因为在程序中所有的属性和方法必须在对象开辟堆内存之后才可以调用,而static类型的方法在对象未被实例化就可以被类名调用。
应用一:static属性是所有对象共享的,那就可以使用static属性统计一个类到底产生了多少 个实例化对象
应用二:可以使用static为对象进行自动的编名操作
②.java主要存在4块内存空间
     ①栈内存:保存所有的对象名称
     ②堆内存:保存每个对象的具体属性内容
     ③全局数据区:保存static类型的属性
     ③全局代码区:保存所有的方法定义

③.对象数组:数组一定要先开辟空间。但因为其是引用数据类型。所以数组中每一个对象都是NULL值,则使用时数组中的每一个对象必须分别进行实例操作。
  对象数组的声明:  类  对象数组名称[ ]=new 类[数组长度] ; 




-----------------------------------------------------------------------------------------------------
4.final关键字声明类,属性,方法
注意; 使用final声明的类不能有子类,不能被子类覆写,修改,声明的变量即为常量,常量不能被修改。(如数据库中保存的用户名等不能修改的信息)1
final修饰的局部变量,一旦赋值,不可再改变,允许初始化(第一次赋值)
final修饰的成员变量  必须手动赋值
要求所有的常量”大写“  
final关键字可以修饰类,成员变量和方法中的局部变量

-----------------------------------------------------------------------------------------------------
5.在JAVA中可以使用instanceof关键字判断一个对象到底是那个类的实例,
  格式:  对象 instanceof 类    ->返回boolean类型(true/false) 
0 0
原创粉丝点击