找到 9301 篇文章 关于面向对象编程

Java 8 Optional 类

Chandu yadav
更新于 2020-06-23 15:24:33

367 次浏览

Optional 是一个容器对象,用于包含非空对象。Optional 对象用于用缺失值表示 null。此类具有各种实用程序方法,以方便代码将值处理为“可用”或“不可用”,而不是检查 null 值。它是在 Java 8 中引入的,类似于 Guava 中的 Optional。类声明以下是 java.util.Optional 类的声明:public final class Optional extends Object类方法序号方法 & 描述1static Optional empty()返回一个空的 Optional 实例。2boolean equals(Object obj)指示其他某个对象是否“等于”此 Optional。3Optional filter(Predicate阅读更多

Java instanceof 及其应用

Ankith Reddy
更新于 2020-06-23 15:25:56

512 次浏览

instanceof 运算符用于检查传递的对象的类型。以下规则解释了 Java 中 instanceof 运算符的使用。如果针对其类类型检查对象,则 instanceof 运算符返回 true。如果针对其层次结构中不存在的类型检查对象,则 instanceof 运算符返回 false。如果针对父对象类型检查子对象,则 instanceof 运算符返回 true。instanceof 运算符返回 true,用于完整的对象层次结构,直到 Object 类。instanceof 运算符返回 false,用于 null 值。如果针对子对象类型检查父对象,则 instanceof 运算符返回 false。以下示例展示了上述... 阅读更多

Java 和多重继承

Arjun Thakur
更新于 2023-08-10 12:01:11

8K+ 次浏览

在 Java 中,我们使用继承来允许创建类的分层分类和对象。顾名思义,继承是类继承另一个类成员的能力。其属性被继承的类称为超类,而继承超类的类称为子类。我们使用 extends 关键字来继承类。Java 中有几种类型的继承,例如单继承和多级继承。在本文中,我们将专门探讨多重继承。Java 中的多重继承在面向对象编程的术语中,多重继承是... 阅读更多

Java 中的锯齿数组

Chandu yadav
更新于 2020-06-23 15:28:13

4K+ 次浏览

锯齿数组是一个多维数组,其中成员数组的大小不同。例如,我们可以创建一个二维数组,其中第一个数组有 3 个元素,第二个数组有 4 个元素。以下示例演示了锯齿数组的概念。示例实时演示public class Tester {    public static void main(String[] args){       int[][] twoDimenArray = new int[2][];       //第一行有 3 列       twoDimenArray[0] = new int[3];       //第二行有 4 列       twoDimenArray[1] = new int[4];       int counter = ... 阅读更多

Java 中的迭代器与 forEach

Arjun Thakur
更新于 2020-06-23 15:12:22

2K+ 次浏览

可以使用两种方法轻松迭代集合。使用 for-Each 循环 - 使用 foreach 循环并使用对象访问数组。使用迭代器 - 使用 foreach 循环并使用对象访问数组。差异并发修改异常 - 使用 for-Each 循环,如果修改了对象,则可能会发生 ConcurrentModificationException。使用迭代器,可以消除此问题。大小检查 - 使用 for-Each,不需要大小检查。使用迭代器,如果 hasNext() 未正确使用,则可能会发生 NoSuchElementException。性能 - 两种情况下的性能相似。以下是如何使用上述方法的示例。示例实时演示import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Tester {    public ... 阅读更多

Java 中的迭代器

Ankith Reddy
更新于 2020-06-23 15:13:29

414 次浏览

通常,您希望遍历集合中的元素。例如,您可能希望显示每个元素。最简单的方法是使用迭代器,它是一个实现 Iterator 或 ListIterator 接口的对象。迭代器使您能够遍历集合,获取或删除元素。ListIterator 扩展迭代器以允许双向遍历列表,以及修改元素。在可以通过迭代器访问集合之前,必须获取一个迭代器。每个集合类都提供了一个 iterator( ) 方法,该方法返回指向起始位置的迭代器... 阅读更多

Java 中的 instanceof 运算符与 isInstance 方法

Chandu yadav
更新于 2020-06-23 15:18:19

299 次浏览

isInstance 方法等效于 instanceof 运算符。该方法用于在使用反射在运行时创建对象的情况下。一般做法是,如果要在运行时检查类型,则使用 isInstance 方法,否则可以使用 instanceof 运算符。请参见下面的示例:示例实时演示public class Tester{    public static void main(String[] args) throws ClassNotFoundException {       Integer i = new Integer(10);       System.out.println(usingInstanceOf(i));       System.out.println(usingIsInstance(i));    }    public static String usingInstanceOf(Object i){       if(i instanceof String){          return "String";       } ... 阅读更多

Java 中的实例变量作为 final

Arjun Thakur
更新于 2020-06-23 15:20:34

2K+ 次浏览

final 是 Java 元素的非访问修饰符。final 修饰符用于最终确定类、方法和变量的实现。final 实例变量只能显式初始化一次。final 实例变量应在以下某个时间点进行初始化:在声明时。在构造函数中。在实例块中。如果根本没有使用上述任何方法初始化 final 变量,编译器将抛出错误。以下示例展示了实例变量作为 final 的示例。示例实时演示public class Tester{    final int A = 1;    final int B;{       B = 2;    }   ... 阅读更多

在 Java 中初始化 HashSet

Ankith Reddy
更新于 2020-06-23 15:00:21

15K+ 次浏览

集合是不允许重复值的集合。HashSet 是 Set 的实现。以下是在 Java 中初始化 HashSet 的方法。使用构造函数 - 将集合传递给构造函数以初始化 HashSet。使用 addAll() - 将集合传递给 Collections.addAll() 以初始化 HashSet。使用 unmodifiableSet() - 将集合传递给 Collections.unmodifiableSet() 以获取不可修改的 Set。使用 add() - 使用 Set 的 add(element) 方法。以下是如何使用上述方法的示例。示例Infinity现在考虑以下代码片段。示例实时演示import java.util.Arrays; import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; public class Tester{    public ... 阅读更多

Java 中除以 0 时是无穷大还是异常?

Arjun Thakur
更新于 2020-06-23 15:00:54

288 次浏览

考虑以下代码片段,其中我们将一个数字除以 0。示例实时演示public class Tester{    public static void main(String[] args) {       double d = 100;       System.out.println(d/0);    } }输出Infinity现在考虑以下代码片段。示例实时演示public class Tester{    public static void main(String[] args) {       int d = 100;       System.out.println(d/0);    } }输出Exception in thread "main" java.lang.ArithmeticException: / by zero at Tester.main(Tester.java:5)正如您所注意到的,无穷大与算术异常,类似的除以零程序产生了不同的结果。区别在于第一个程序中使用的浮点运算和第二个程序中使用的整数运算。

广告