找到 34423 篇文章 相关的编程

JVM 是否在 Java 中创建 Main 类的对象?

Ankith Reddy
更新于 2020-06-26 07:40:55

423 次浏览

众所周知,Java 需要在公共类中将 main() 方法设为静态方法才能使其可执行。此要求的主要原因是使 JVM 能够在不创建对象的情况下调用 main() 方法。这意味着 JVM 不会创建包含 main() 方法的 Main 类的对象。为了证明这一点,我们可以将包含 main 方法的 Main 类设为抽象类,程序仍然可以运行。以下示例展示了这一点。在这里,我们将 main 类设为抽象类。示例abstract public class Tester {    public static void main(String args[]) ... 阅读更多

Java 编程中 x++ 和 x= x+1 的区别

Arjun Thakur
更新于 2020-06-26 07:41:18

590 次浏览

x++ 自动处理类型转换,而 x= x + 1 在 x 不是 int 变量的情况下需要类型转换。请参见下面的示例。示例 实时演示public class Tester {    public static void main(String args[]) {       byte b = 2;       //需要类型转换       //因为 1 是 int 类型,而 b 是 byte 类型       b = (byte) (b + 1);       System.out.println(b);       byte b1 = 2;       //编译器隐式类型转换       b1++;       System.out.println(b1);    } }输出3 3

Java 编程中 TreeMap、HashMap 和 LinkedHashMap 的区别

George John
更新于 2020-06-26 07:25:35

555 次浏览

HashMap、TreeMap 和 LinkedHashMap 都实现了 java.util.Map 接口,以下是它们的特性。HashMapHashMap 的插入和查找复杂度为 O(1)。HashMap 允许一个空键和多个空值。HashMap 不维护任何顺序。TreeMapTreeMap 的插入和查找复杂度为 O(logN)。TreeMap 不允许空键,但允许多个空值。TreeMap 维护顺序。它以排序和升序的方式存储键。LinkedHashMapLinkedHashMap 的插入和查找复杂度为 O(1)。LinkedHashMap 允许一个空键和多个空值。LinkedHashMap 维护键值对插入的顺序。示例 实时演示import java.util.HashMap; import java.util.Hashtable; import java.util.LinkedHashMap; import java.util.Map; import java.util.TreeMap; public class Tester { ... 阅读更多

如何在 Java 中创建自己的辅助类?

Arjun Thakur
更新于 2020-06-26 07:26:54

4K+ 次浏览

辅助类用于以下目的。提供项目中多个类所需的通用方法。辅助方法通常是公共的和静态的,以便可以独立调用它们。辅助类的每个方法都应该独立于同一类的其他方法工作。以下示例展示了一个这样的辅助类。示例public class Tester {    public static void main(String[] args) {       int a = 37;       int b = 39;       System.out.println(a + " 是素数: " + Helper.isPrime(a));       System.out.println(b + " 是素数: " + Helper.isPrime(b));    } } ... 阅读更多

如何在 Java 中创建不可变类?

George John
更新于 2020-06-26 07:27:35

265 次浏览

不可变类对象的属性在初始化后无法修改。例如,String 是 Java 中的一个不可变类。我们可以通过遵循以下规则创建不可变类。将类设为 final - 类应该为 final,这样就不能扩展它。将每个字段设为 final - 每个字段都应该为 final,这样在初始化后就不能修改它们。为每个字段创建 getter 方法。- 为每个字段创建一个公共 getter 方法。字段应为私有的。没有每个字段的 setter 方法。- 不要为任何字段创建公共 setter 方法。创建一个参数化构造函数 ... 阅读更多

统计一对 Java 字符串中匹配字符的数量

Chandu yadav
更新于 2020-06-26 07:28:27

2K+ 次浏览

为了找到两个 Java 字符串中匹配字符的数量,方法是首先创建这两个字符串的字符数组,这使得比较变得简单。然后将每个唯一字符放入 HashMap 中。将另一个字符串的每个字符与创建的 HashMap 进行比较,查看它是否在 HashMap 中存在,如果存在,则将其放入另一个 HashMap 中,以防止重复。最后获取这个新创建的目标 HashMap 的大小,它等于两个给定字符串中匹配字符的数量。示例 实时演示import java.util.HashMap; public class ... 阅读更多

Java 编程中的 CopyOnWriteArrayList 类

Ankith Reddy
更新于 2020-06-26 07:29:45

193 次浏览

类声明public class CopyOnWriteArrayList extends Object implements List, RandomAccess, Cloneable, SerializableCopyOnWriteArrayList 是 ArrayList 的线程安全变体,其中可以更改 ArrayList 的操作(add、update、set 方法)会创建底层数组的克隆。CopyOnWriteArrayList 用于线程环境中,其中读取操作非常频繁,而更新操作很少。CopyOnWriteArrayList 的迭代器永远不会抛出 ConcurrentModificationException。对 CopyOnWriteArrayList 的任何类型的修改都不会反映在迭代过程中,因为迭代器是在创建的。在迭代中不支持 List 修改方法,如 remove、set 和 add。这些方法将抛出 UnsupportedOperationException。可以将 null 添加到列表中。CopyOnWriteArrayList 方法以下是 ... 阅读更多

Java 编程中按字典顺序比较两个字符串

George John
更新于 2020-06-26 07:30:58

315 次浏览

我们可以使用以下方法在 Java 中按字典顺序比较两个字符串。使用 String.compareTo(String) 方法。它以区分大小写的方式进行比较。使用 String.compareToIgnoreCase(String) 方法。它以不区分大小写的方式进行比较。使用 String.compareTo(Object) 方法。它以区分大小写的方式进行比较。这些方法返回比较字符串的第一个奇数字符的 ASCII 差值。示例 实时演示public class Tester {    public static void main(String args[]) {       String str = "Hello World";       String anotherString = "hello world";       Object objStr = str;       System.out.println( str.compareTo(anotherString) );       System.out.println( str.compareToIgnoreCase(anotherString) );       System.out.println( str.compareTo(objStr.toString()));    } }输出-32 0 0

在 Java 中重写不同包中的方法

Chandu yadav
更新于 2020-06-26 07:32:47

1K+ 次浏览

测试重写的好处是可以定义特定于子类类型的行为,这意味着子类可以根据其需求实现父类方法。在面向对象的术语中,重写意味着覆盖现有方法的功能。示例 实时演示class Animal {    public void move() {       System.out.println("动物可以移动");    } } class Dog extends Animal {    public void move() {       System.out.println("狗可以行走和奔跑");    } } public class TestDog {    public static void main(String args[]) {       Animal a = new Animal(); // ... 阅读更多

Java 编程中的重载

Arjun Thakur
更新于 2020-06-26 07:35:00

258 次浏览

方法重载是一种静态多态性。在方法重载中,我们可以定义多个具有相同名称但参数不同的方法。请考虑以下示例程序。示例 实时演示public class Tester {    public static void main(String args[]) {       Tester tester = new Tester();       System.out.println(tester.add(1, 2));       System.out.println(tester.add(1, 2, 3));    }    public int add(int a, int b) {       return a + b;    }    public int add(int a, int b, int c) {       return a + b + c;    } }输出3 ... 阅读更多

广告

© . All rights reserved.