第01周 预习、实验与作业:绪论与Java基本语法

1. 使用Java能编写哪些类型的程序?试举至少两个例子。

      (1).桌面应用程序:游戏,文本编辑器;

      (2)Web应用程序:动态网络,电子商务网络。

2. Java号称“一次编译、处处运行”(Write Once, Run Anywhere!),怎么理解这句话?为使编译好的程序能运行,需先在操作系统安装什么?

  答:Java的“一次编译、处处运行”特性是通过JVM实现的,它使得Java程序具有高度的可移植性和跨平台性。为使编译好的Java程序能在操作系统上运行,需要先安装JDK或JRE。

3. 对比c版本的与Java版本HelloWorld代码,有何不同?

答:(1)C版的

#include <stdio.h>  
  
int main() {  
    printf("Hello, World!\n");  
    return 0;  
}

(2)java的

public class HelloWorld {  
    public static void main(String[] args) {  
        System.out.println("Hello, World!");  
    }  
}
  • C语言程序需要使用C编译器(如gcc或clang)进行编译,生成可执行文件(如.exe.out等,具体取决于操作系统),然后直接运行该可执行文件。
  • Java程序使用Java编译器(javac)将源代码(.java文件)编译成字节码(.class文件),然后Java虚拟机(JVM)负责解释执行这些字节码。Java程序不是直接生成可执行文件,而是生成与平台无关的字节码,由JVM在运行时进行解释或即时编译(JIT编译)成机器码执行。

4.怎么比较两个字符串内容是否相同?可以直接用==吗?为什么对基本数据类型可以直接使用==?对引用数据类型不行?

答:(1)在C语言中,字符串通常是通过字符数组来表示的,并且以空字符(\0)作为结束符。由于C语言没有内置的字符串类型,它实际上是将字符串作为字符数组来处理。因此,在C中比较两个字符串的内容是否相同,通常需要使用strcmp()函数,而不是==操作符。

          (2)在Java中,字符串是通过String类实现的,它是一个引用数据类型。当你使用==来比较两个String对象时,你实际上是在比较它们的引用(即内存地址)是否相同,而不是它们的内容是否相同。为了比较两个字符串的内容,你应该使用equals()方法。

5.下面这段代码,本意是要达到什么效果?能运行成功吗?为什么?怎么获得String的trim()方法的说明?

String x = null;
int length = x.length();
System.out.println("x.length = "+length +", content = "+x.trim());

答:要输出字符串x的长度和内容。

不能,没有public,而且x被初始化为null。

访问Oracle的Java SE文档(如Java 8, Java 11等),在java.lang.String类的文档中查找trim()方法。

6.阅读如下代码

Integer x = Integer.valueOf("10");
Integer y = x + 1;
int z = x + y;

x是Integer类型,1是int类型,为什么他们可以相加,使用了什么技术?z是int,x与y是Integer类型,却可以直接将x + y 赋给z,使用了什么技术?

答:java中,Integer 和 int之间的操作涉及到了自动装箱和自动拆箱。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值