草庐IT

Java "static import"与 Java 8 中的 "import static"

我试图在Java上使用静态导入,但我写错了staticimportjava.lang.System.out;并且代码编译通过(虽然找不到“out”符号),没有语法错误。那么,“静态导入”究竟意味着什么? 最佳答案 这不应该编译。staticimportjava.lang.System.out;根据JLS,单个静态导入应如下所示:importstaticjava.lang.System.out;所有形式的Javaimport语句都以import关键字开始,我认为在可以使用import关键字。注意:import和static关键字在此上

java - 在java中迭代静态int值

我有一个简单的问题。有没有一种方法(我想是使用反射)来迭代一个类的所有静态值?例如classAny{staticintone=1;staticinttwo=2;staticintthree=3;publicstaticvoidmain(String[]args){for(inti:magicMethod(Any.class)){System.out.println(i);}}}输出123谢谢。 最佳答案 importjava.util.*;importjava.lang.reflect.*;classAny{staticintone

java - Java中的实例和类(静态)变量有什么区别

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。这个问题的标题实际上是以前的考试问题,我正在寻找澄清/答案。请注意,我正在学习Java并逐渐熟悉它的语法。我知道之前可能有人问过这个问题,如果可能的话,有人可以告诉我在哪里可以访问这个问题吗?如果是这种情况,也请接受我的道歉。为了表明我一直在研究这个领域,我自己的理解是实例变量属于某个类(模板)的对象/实例,并且可以在需要时在该实例/对象内更改(变异)。类变量是只有一个副本,可以访问但不能修改(变

java - 静态内部类线程在另一个 java 类中是否安全?

为了收集更小的辅助工具类,我创建了一个通用的classMyUtils://MyUtils.javapublicfinalclassMyUtils{publicstaticclassHelper1{};publicstaticclassHelper2{};//...}MyUtils中的辅助类将在包的其他文件中使用://MyClass1.javapublicclassMyClass1{privateMyUtils.Helper1help1=newMyUtils.Helper1();publicvoidmethod(){privateMyUtils.Helper2help2=newMyUti

java - 为什么静态 block 中的代码不执行?

当我在main中打印constant时,staticblock不执行,但是当我打印stat,它确实执行了。Java中的staticfinal有什么重要性吗?packagecom.test.doubt;classDoubt{publicstaticfinalintconstant=123;publicstaticintstat=123;static{System.out.println("StaticBlock");}}publicclassMyProgram{publicstaticvoidmain(String[]args){System.out.println(Doubt.cons

java - 我们可以在 Java 中调用带有空对象的静态方法吗?如果是这样,如何?

既然可以直接从类中调用静态方法(即ClassName.methodName),为什么还要用类的对象调用静态方法呢?如果有人知道,请举例说明。publicstaticvoidmethodA(){} 最佳答案 以下代码包含一个示例,其中通过null引用调用静态方法。publicclassTest{publicstaticvoidmain(String...args){Testtest=null;test.greeting();//callwithnullreference}publicstaticvoidgreeting(){Syste

java - 内部类内部的内部静态类无法转换

受到这个问题的启发:HowtoimplementsIterable我决定制作一个基本的链表实现并实现一个迭代器,以便拥有如下代码:MyListmyList=newMyList();myList.add("hello");myList.add("world");for(Strings:myList){System.out.println(s);}代码并不难处理,创建一个classMyListimplementsIterable用privatestaticclassNode和一个privateclassMyListIteratorimplementsIterator,但后来我在实现自己的I

java - Java Servlet 中的静态变量行为

我正在开发一个javaservlet,它在运行时会在新线程中启动不同的对象方法。这些线程应该访问描述特定servlet实例的变量,比如jobId。出于这个原因,我将jobId变量声明为静态的。servlet构造函数正在为每个servlet实例(调用)计算此值。如果同时调用servlet几次,我在徘徊,调用之间共享静态jobId变量,这意味着某些线程会得到错误的jobId,或者每次调用都计算一次-所以线程启动的特定servlet将使用为该特定servlet计算的jobId(这是我希望它工作的方式)。有任何想法吗?非常感谢! 最佳答案

java : non-static variable cannot be referenced from a static context Error

以下代码在变量con2上生成错误,提示“无法从静态上下文错误中引用非静态变量con2。”我在Google上搜索了一个解决方案他们建议变量尚未初始化以使方法可用。我是否错误地初始化了它?我也尝试过将内容更改为公开,但这也无济于事。importjava.io.*;importjava.net.*;importjava.sql.*;importjava.sql.CallableStatement;importjava.sql.ResultSet;importjava.sql.PreparedStatement;importnet.sourceforge.jtds.jdbcx.JtdsData

java - 如何创建静态最终 java.net.URL?

我的问题很简单。我正在尝试制作一组​​java.net.URL,它们是publicstaticfinal,这样任何类都可以从任何上下文访问它们,因为这些URL获胜'在运行时改变。但是,当我尝试创建它们时,出现编译器错误,告诉我必须捕获或声明抛出的java.net.MalformedURLException,但在方法之外这是不可能的。有什么方法可以绕过这种抛出非java.langThrowable的构造函数吗?下面的一些虚拟代码可视化我的问题:publicclassMain{publicstaticfinaljava.net.URLSTATIC_URL=newjava.net.URL("