2022-07-22第二第五小组 张晟源(复习,泛化,迭代器,@Override)
作者:互联网
JAVA(基础复习,泛化,迭代器,@Override)
心理总结:
今天是自主复习的一天的,加入了基础群,和提升群,在提升群学习了链表结构,复习了以前薄弱的注解,泛化和迭代器
1.什么类不能被继承:修饰符final去修饰一个类时,不能被继承
2.继承特性:一个子类只有唯一一个父类,但是一个父类可以有多个子类。
3.类:是一组具有相同属性和行为的对象集合,抽象成这一类事物模板,用这类的事物的属性和行为加以定义
4.对象:就是这一类事物一个具体的实例
5.类与对象之间关系:
- 类是一类事物描述,是抽象的
- 对象是这一类的事物实例,是具体的
- 类是对象模板,对象是类的实例
6.数据类型默认值
分类 | 数据类型 | 默认值 |
基本数据 | 整数(byte short int long) | 0 |
浮点数 | (float,double) | 0.0 |
字符 | (char) | '\u000' |
布尔类型 | boolean | false |
引用类型 | 数组,字符串,类,接口 | null |
7.成员变量和局部变量的区别
- 在类中位置不同
成员变量:在类中,方法外
局部变量:方法中或者方法参数列表
- 作用范围不一样
成员变量:类中
局部变量:方法中
- 初始化值不一样
成员变量:有默认值
局部变量:没有默认值,必须 先赋值再使用
- 生命周期不一样:
成员变量:随着对象的创建而存在,随着对象的销毁而销毁
局部变量;随着方法的调用而存在,随着方法调用完结而销毁
注解@Override
@Override 注解是用来指定方法重写的,只能修饰方法并且只能用于方法重写,不能修饰其它的元素。它可以强制一个子类必须重写父类方法或者实现接口的方法。
泛化:
泛化是JDK5之后进入的特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。
举例说明:
假定我们有这样一个需求:写一个排序方法,能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,该如何实现?答案是可以使用 Java 泛型。
java中泛化标记:
- E - Element (在集合中使用,因为集合中存放的是元素)
- T - Type(Java 类)
- K - Key(键)
- V - Value(值)
- N - Number(数值类型)
- ? - 表示不确定的 java 类型
案例:
public class FanHua
{
// 泛型方法 printArray
public static < E > void printArray( E[] inputArray )
{
// 输出数组元素
for ( E element : inputArray ){
System.out.printf( "%s ", element );
}
System.out.println();
}
public static void main( String args[] )
{
// 创建不同类型数组: Integer, Double 和 Character
Integer[] intArray = { 1, 2, 3, 4, 5 };
Double[] doubleArray = { 1.1, 2.2, 3.3, 4.4 };
Character[] charArray = { 'H', 'E', 'L', 'L', 'O' };
System.out.println( "整型数组元素为:" );
printArray( intArray ); // 传递一个整型数组
System.out.println( "\n双精度型数组元素为:" );
printArray( doubleArray ); // 传递一个双精度型数组
System.out.println( "\n字符型数组元素为:" );
printArray( charArray ); // 传递一个字符型数组
}
}
迭代器
迭代器是一种访问集合的方法,Iterator 是 Java 迭代器最简单的实现,ListIterator 是 Collection API 中的接口, 它扩展了 Iterator 接口。
- 迭代器 it 的两个基本操作是 next 、hasNext 和 remove。
- 调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。
- 调用 it.hasNext() 用于检测集合中是否还有元素。
- 调用 it.remove() 将迭代器返回的元素删除。
Iterator 类位于 java.util 包中,使用前需要引入它
import java.util.Iterator; // 引入 Iterator 类
案例:
// 引入 ArrayList 和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;
public class RunoobTest {
public static void main(String[] args) {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(12);
numbers.add(8);
numbers.add(2);
numbers.add(23);
Iterator<Integer> it = numbers.iterator();
while(it.hasNext()) {
Integer i = it.next();
if(i < 10) {
it.remove(); // 删除小于 10 的元素
}
}
System.out.println(numbers);
}
}
执行代码,输出:
[12, 23]
标签:07,迭代,Iterator,22,numbers,数组,out,泛化 来源: https://www.cnblogs.com/shenmimao/p/16507952.html