我这里有一个与Java有关的简单问题.假设你有一个int数组作为实例变量:
int[] in = new int[5];
Run Code Online (Sandbox Code Playgroud)
所以,现在默认它包含5个零.但是如果你有与本地变量相同的数组呢?它被初始化为零吗?这不是作业,我正在学习Java语言.最好的祝福
这是Java代码的片段:
int[][] uu = new int[1][1];
uu[0][0] = 5;
for(int[] u: uu){
System.out.println(u[0]);
}
Run Code Online (Sandbox Code Playgroud)
它打印5.但为什么声明for循环的声明部分as int[] u,但不是as int[][] u?
在uu你引用2D数组...这不是一个功课.我正在准备Java认证.干杯
这是Java语言中的代码片段:
public void name(){
int value = 9;
int o;
if(value > 9)
o = 5;
if(value <= 9)
o = 8;
System.out.println(o);
}
Run Code Online (Sandbox Code Playgroud)
为什么编译器在考虑值的最后一个选项时看不到第二个if语句?它不会编译.最好的祝福
我的问题与Java语言有关。这就是我得到的:
interface I1{}
interface I2{}
class C1 implements I1{}
class C3 extends C1 implements I2{}
Run Code Online (Sandbox Code Playgroud)
什么时候
C1 01;
C3 o3;
I1 i1;
Run Code Online (Sandbox Code Playgroud)
ETC
现在事实证明这I2 i2 = (I2) i1;是正确的,因为在运行时 i1 实际上引用了实现 I2 的对象。但我不明白。接口之间没有任何关系,那么如何将其转换为相邻接口呢?没有更多的代码,只是为了准备 Java 认证而进行的演练。此致
这是一段Java代码:
static {
ture = 9;
}
static int ture;
{ // instance block
System.out.println(":"+ture+":");
}
Run Code Online (Sandbox Code Playgroud)
它是如何编译的?初始化后已执行变量'ture'的声明.据我所知,静态块和字段按照它们出现的顺序执行.
现在为什么实例块中的值9已被打印3次?顺便说一下,类的实例已经创建了3次.这不是作业,我正在学习Java认证.
我有一个关于C++虚函数的问题.该virtual关键字用于class基类中的函数的C++ 声明中,以通知该函数的子类实现可能从子类到子类不同.不同的子类可以具有不同的函数实现.
我不明白.当你在C++中定义接口时,就我现在所看到的而言,它与Java中的接口不同.
实际上我不明白C++中的单词接口是什么意思.您可以virtual在头文件中指定一个函数.然后,基类的子类或派生类可以以任何方式覆盖它,只要它是虚函数即可.
C++中的接口是头文件吗?
干杯
可能重复:
运行时与编译时间
我怎么知道Java中的特定代码行是否会抛出编译时或运行时错误?假设特定的代码行无论如何抛出并出错.
这是Java中的代码片段:
Object ob = new int[2];
Run Code Online (Sandbox Code Playgroud)
现在让我们说我想初始化数组.这个
ob[0] = 5; 将无法工作,因为ob属于Object类型.施法也不起作用:
(int[])ob[0] = 5;
Run Code Online (Sandbox Code Playgroud)
顺便说一下,(int[]ob)[0]= 5;
会导致语法错误.那么,如何在没有硬编码的情况下在运行时分配值(例如Object ob = new int[]{1,2}?这不是家庭作业,我正在尝试理解Java.这是为了准备Java认证所必需的.干杯
我正在使用Java 7.我正在尝试使用HTML标签格式化文本.我把文字传入
JTextField text = new JTextField();
text.setText("<html><body><p>The program performs encryption operations on the following ciphers: </p></body></html>");
Run Code Online (Sandbox Code Playgroud)
但程序也打印HTML标签.那个文本样本只是一个例子.可能是什么问题?干杯
这是一段Java代码:
interface Rideable {
String getGait();
}
public class Camel implements Rideable {
int x = 2;
public static void main(String[] args) {
new Camel().go(8);
}
void go(int speed) {
System.out.println((++speed * x++) + this.getGait());
}
String getGait() {
return " mph, lope";
}
}
Run Code Online (Sandbox Code Playgroud)
事实证明,编译失败(根据Oracle),但在我看来,它将运行良好产生输出.那么,编译失败的罪魁祸首在哪里?干杯
我正在编写服务器客户端应用程序.客户端通过不同的流将某种数据发送到服务器.一旦我在主方法中放置这样的流,程序什么都不做; 空控制台也不例外:
try {
socket = new Socket("localhost", 4050);
din = new DataInputStream(socket.getInputStream());
oin = new ObjectInputStream(socket.getInputStream());
dout = new DataOutputStream(socket.getOutputStream());
} catch (UnknownHostException e) {
System.out.println("Exception: the host is unknown");
} catch (IOException e) {
System.out.println("I/O exception thrown by socket");
}
Run Code Online (Sandbox Code Playgroud)
一旦我oin = new ObjectInputStream(socket.getInputStream());从main方法的那一部分中删除了这个流 ,程序就会抛出EOFException或连接重置异常.在上面的代码中有什么特别之处,程序什么也不做,并且没有例外?
将上述流放入单独的方法后
private static MessageObject readObject(){
MessageObject mo = null;
try{
oin = new ObjectInputStream(socket.getInputStream());
mo = (MessageObject)oin.readObject();
}
catch(IOException e){
System.err.println(e.getCause());
}
catch(ClassNotFoundException e){
System.err.println(e.getCause());
}
return mo;
}
Run Code Online (Sandbox Code Playgroud)
它抛出了这个异常:
Exception …Run Code Online (Sandbox Code Playgroud) 这是Java代码的片段.
class A{
public A() { }
public A(int i) { System.out.println(i ); }
}
class B{
static A s1 = new A(1);
A a = new A(2);
public static void main(String[] args){
B b = new B();
A a = new A(3);
}
static A s2 = new A(4);
}
Run Code Online (Sandbox Code Playgroud)
执行顺序如下:1,4,2,3因为以这种方式执行类的初始化.但是,如果删除B b = new B();对象创建,这是否意味着该类不会按上述顺序初始化?最好的祝福
这是一段Java代码:
static boolean a; // gets false
static boolean b;
static boolean c;
public void printA(){
boolean bool = (a = true) || (b = true) && (c = true);
System.out.print(a + ", " + b + ", " + c);
}
Run Code Online (Sandbox Code Playgroud)
它没有编译,有什么问题?错误:此行上有多个标记; 'bool'变量行上的语法错误.我希望它能打印出来true, false, true.虽然根据我的教程书打印true, false, false.
我知道它会执行短路但是在&&双方都需要进行评估的情况下.那不是作业,我正在学习Java.干杯