Java 4

2019-04-01  本文已影响0人  蔡大爷的小甜心

可变参数

JDK中具有可变参数的类Arrays.asList()方法。

分别传多个参、传数组,传数组又传参的情况。

注意:传入基本数据类型数组的问题。

从JDK 5开始, Java 允许为方法定义长度可变的参数。

语法:数据类型…变量名。

可变长参数是Object[] 数组。(可变参数里存的是对象数组)

JDK中的典型应用:

Arrays.asList(T…a)是jdk中的典型应用。

需求:对若干个整数进行求和

可变参数的细节

1、声明:

在一个方法中,最多只能有一个可变参数。可变参数只能放在参数列表的最后面。

2、调用:

当使用可变参数时,可以传0或多个参数。当使用可变参数时,也可以传一个数组进去,就表示多个参数。

3、使用:

在方法内部使用时,就是在使用一个数组。当调用时没有传参数时(传了0个),这时在方法内部的参数数组是有值的(不为null),但长度为0.

四、对象包装器与自动打包

对象包装器和自动装箱

有时,需要将int这样的类型转化为对象。所有的基本类型都有一个与之对应的类。例如,Integer类对应基本类型int。通常,这些类称为包装器(wrapper)。这些对象包装器拥有很明显的名字:Integer、Long、Float、Double、Short、Byte、Character、Void和Boolean(前6个类派生于公共的超类Number)。对象包装器类是不可变的,即一旦构造了包装器,就不允许更改包装在其中的值。同时,对象包装器还是final,因此不能定义它们的子类。

五、枚举类

一些方法在运行时,它需要的数据不能是任意的,而必须是一定范围内的值,此类问题在JDK5以前采用自定义带有枚举功能的类解决,Java5以后可以直接使用枚举予以解决。

JDK 5新增的 enum 关键字用于定义一个枚举类。

每一个枚举值都是枚举类的具体实例对象.只不过是静态常量.

枚举类具有如下特性:

1、枚举类也是一种特殊形式的Java类。

2、枚举类中声明的每一个枚举值代表枚举类的一个实例对象。

3、与java中的普通类一样,在声明枚举类时,也可以声明属性、方法和构造函数.

枚举类也可以实现接口(序列化)、或继承抽象类。

JDK5中扩展了swith语句,它除了可以接收int, byte, char, short外,还可以接收一个枚举类型(enum)。

继承

1:描述一个学生类:姓名年龄学号属性,学习的方法

2:描述一个工人类:姓名年龄工号属性,工作的方法

3:描述一个人类:姓名年龄属性,说话的方法。

4:发现学生类和人类天生有着联系,学生和工人都是人。所以人有的属性和行为学生和工人都会有。出现类代码重复故使用继承减少代码重复率。

继承特点

1:描述类和类之间的关系

2:降低类和类之间的重复代码

3:降低对象和对象之间的代码重复使用静态变量

4:降低类和类之间的代码重复使用就继承

extends关键字

继承细节;

1:类名的设定,被继承的类称之为父类(基类),继承的类称之为子类

2:子类并不能继承父类中所有的成员

3:父类定义完整的成员 静态成员,非静态,构造方法。静态变量和静态方

法都可以通过子类名.父类静态成员的形式调用成功。

4:所有的私有成员不能继承,private修饰的成员。

5:构造函数不能被继承

super关键字

作用:

1:主要存在于子类方法中,用于指向子类对象中父类对象。

2:访问父类的属性

3:访问父类的函数

4:访问父类的构造函数

上一篇下一篇

猜你喜欢

热点阅读