Java基础(五)

2020-04-01 16:11:25来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Java基础(五)

1. 构造函数

1.1. 构造函数特征

与类相同名称,不声明返回值类型。

不能被staticfinalsynchronizedabstractnative修饰,不能有return语句。

1.2. 构造函数作用

创建对象,给对象进行初始化。

1.3. 构造函数分类

隐式无参构造器,显示构造器。

隐式无参构造器默认提供,无需显式定义。

显式构造器:定义一个或多个构造器(有参、无参)。

1.4. 注意事项

  1. Java中每个类至少有一个构造器。
  2. 默认构造器修饰符和所属类一致。
  3. 一旦定义了显式构造器,则不提供默认无参构造器。
  4. 一个类可以创建多个重载的构造器。
  5. 父类构造器不可被子类继承。

1.5. 使用this调用本类构造器

this():调用本类无参构造函数。

this(参数类型  参数名...):调用本类有参构造函数。

注意:

① 使用this(...)必须放在构造函数首行。

② 使用this(...)调用本类其他方法,至少有一个构造方法没用this(...)

2. 包管理

2.1. package

关键字:package

告诉编译器所在类属于哪个包下。

语法: package 顶层包名.子层包名....

注:包的名称全由小写组成。

2.2. Import

关键字:import

告诉编译器所在类所用类位于哪个包。

语法:import 包名.[子包名]...类名。

3. 数组

数组是多个相同类型数据的集合。引用元素可以为任意数据类型。

数组属于引用类型,数组型数据为对象。数组中每个元素相当于该对象成员变量。

3.1. 一维数组

声明:类型 var[]或类型[] var

3.2. 一维数组初始化

静态初始化:定义数组的同时,为数组分配空间并赋值。例:

int a[]=new int[]{1,2,3}int[] a={1,2,3}

动态初始化:数组声明且为数组元素分配空间,与赋值操作分开。例:

int a[]=new int[3];

a[0]=1;

a[1]=2;

a[2]=3;

 

3.3. 数组引用

  1. 定义并实例化后才可引用数组元素。
  2. 引用方式:数组名[数组元素小标]
  3. 数组都有一个属性length指明数组长度,且一旦初始化后,长度不能被修改。

3.4. 二维数组

声明:int[][] y,int[] y[],int y[][]

4. 可变参数

  1. 方法参数部分指定类型参数个数是可变的。
  2. 声明方式:(参数名...参数名)
  3. 可变参数方法使用与数组是一致的。
  4. 方法的参数部分有可变参数,需放到形参最后。

5. 类的继承

子类继承了父类,便继承了父类方法、属性。子类中可使用父类方法、属性,也可自行扩展。

关键字:extends

子类不是父类子集,是扩展。

Java只支持单继承,不允许多继承。

6. 方法重写

在子类中可以根据需要对父类中继承来的方法进行改造。也称方法重置、覆盖。在程序执行时子类方法将覆盖父类方法。

注:

  1. 重写方法必须和被重写方法具有相同的方法名、参数列表、返回值类型。
  2. 重写方法不能使用比被重写方法更为严格的访问权限。
  3. 重写与被重写方法必须同时为static的或者同为非static的。
  4. 子类方法抛出异常不能大于父类被重写方法抛出异常。

7. super关键字

Java中利用super来调用父类指定操作。

  1. 可用于访问父类中定义的属性。
  2. 可用于调用父类中定义的成员方法。
  3. 可用于在子类构造方法中调用父类构造器。

7.1. 注意事项

  1. 当子、父类出现同名成员,用super区分。
  2. Super追溯不仅限直接父类。
  3. Superthis类似,this表示本类对象引用,super代表父类的内存空间标识

7.2. 父类构造器

当父类中没有空参数的构造器时,子类构造器必须通过this()或super()语句指定调用本类或父类相应构造器,且必须放在首行。

如果子类构造器中既无显式调用父类或本类构造器,且父类无无参构造函数,则编译报错。


原文链接:https://www.cnblogs.com/JulySevenHai/p/12615828.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: LeetCode 1111. 有效括号的嵌套深度

下一篇:java8Stream