DAY3:尚学堂高琪JAVA(33~40)

构造器

格式:
【修饰符】 类名 (参数){
}
是一种特殊的方法:

  1. 通过new关键字调用
  2. 构造器虽然有返回值,但不能定义返回值类型(返回值类型是本类),不能在构造器里调用return
  3. 如果没定义构造器,系统会自动定义一个无参的构造函数。如果已经定义则编译器不会添加
  4. 构造器方法名必须和类名一致。
  5. 构造该类的对象,经常也用来初始化对象的属性。如下:
    在这里插入图片描述

重载

一个类中可以定义有相同的名字,但是参数个数不同的多个方法。调用时会根据不同的参数进行区分。

  • 相同:同类中,同方法名
  • 不同:参数个数,参数类型,参数顺序

注意:只有返回值不同不构成方法的重载

static关键字

在类中,用static声明的成员变量为静态变量,或者叫类变量。

  1. 它是该类的公用变量,属于类,被该类的所有实例共享,在类被载入时显式初始化。
  2. 对于该类的所有对象来说,static成员变量只有一份。该类的所有对象共享。
  3. 可以使用 对象.类属性 来调用。不过一般是用 类名.类属性
  4. static变量置于方法区中。

用static声明的方法称为静态方法

  1. 不用对象,就可以调用(类名.方法名)
  2. 在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可以访问非static的成员

成员变量属于对象,static变量属于类。如下图:
Cannot make a static reference to the non-static field eyes
Cannot make a static reference to the non-static field eyes
静态方法要想调用类中的变量就需要将其变为静态的,这样才可以被加载如堆内存。

this关键字

普通方法中,this总是指向调用该方法的对象。
构造方法中,this总是指向正要初始化的对象。

重载的构造方法首行可通过this()调用其他构造函数
在这里插入图片描述
注意:
super的用法跟this类似,this代表对本类对象的引用,指向本类已经创建的对象;而super代表对父类对象的引用,指向父类对象
this和super是属于对象范畴的东西,而静态方法是属于范畴的东西。

继承

子类继承父类,可以得到父类的全部属性和方法(除了父类的构造方法)。
java中类只有单继承
java中的多继承可以通过接口来实现。

猜你喜欢

转载自blog.csdn.net/qq_40802113/article/details/86566285