java基础01
1.计算机识别的是什么?
计算机识别的是二进制,相当于能识别指令。
2.什么是指令?
指令:能被CPU执行和识别的二进制命令。
3.编译源代码
.java文件通过compiler编译成字节码.class文件
4.运行字节码
.class文件在JVM(java虚拟机)中被编译成指令。
5.安装Eclipse(没有笔记本的同学略过,后面的题全部在Eclipse中完成)
6.在主函数中写多条输出语句,分别换行输出以下问题的答案:
1)什么是jdk、jre、jvm
jdk:java开发工具包,提供开发java程序的工具
jre:java运行环境,提供java文件运行环境
jvm:java虚拟机,本质上是一个软件,编译成在多个操作系统都能识别的指令,一次编译,到处运行。
2)java平台的三个版本
javaSE、JavaME、JavaEE
4)java源代码文件的后缀名是什么?
java的源代码文件后最是.java格式
5)java字节码文件的后缀名是什么?
java字节码文件的后缀名.class
6)对java源代码文件的命名有何规范?
A:类名要与文件名一致
B:后缀用.java
7)简述java的编译过程
1.编写源代码;2.编译器(javac.exe)编译成字节码文件;3.在JVM中运行编译成计算机能够识别的指令。
8)什么是IDE
集成开发环境,常用的有Eclipse、NetBeans、IntelliJ IDEA。
9)指令是十进制还是二进制
指令是计算机能够识别的机器码,是二进制。
10)描述java虚拟机中类加载器的加载顺序,以及这样做的好处
先加载启动类库;再加载扩展类库;最后加载用户自定义类库。这样做可以避免一些非法代码的运行,提高代码执行的安全性。
11)什么是程序
程序就是指令有序的集合。
12)相比于机器语言和汇编语言,高级语言有什么优势
能够被大多数人理解,不需要程序员与硬件部分直接操作,且具有跨平台功能;而机器语言由二进制组成,编译过程繁杂;汇编语言的跨平台性差。
13)什么是编译型语言,什么是解释型语言
编译型语言:如java语言,产生编译后的文件,形成指令,cpu一次性识别该指令并执行的语言
解释型语言:如javascript,代码一句一句的分别交给cpu执行,执行一句完成后再执行下一句的语言。
14)在瀑布式模型中,一个软件从开发到完成,将经过哪些阶段
瀑布式模型:需求--分析--设计--编码开发--测试
15)java中的垃圾回收器有什么作用
代码执行后仍然占据内存,系统将判断是否将继续执行代码,如果不执行,将被释放出内存,进入垃圾回收器。
16)java代码中,每一条语句的结束时,使用的符号是?
每一条语句结束时使用;号。
7.定义五个变量,它们的类型分别是int、double、String、char、boolean,然后再分别给这些变量赋值。再输出这些变量的值。然后重新给这些变量赋值,赋值后再输出。
public class Problem7 {
public static void main(String[] args) {
//定义五个不同类型的变量,为每个不同类型的变量开辟一块区域
int a;
double b;
String c;
char d;
boolean e;
//给不同变量赋值
a=10;
b=2.2;
c="王大锤";
d='a';
e=true;
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("d:"+d);
System.out.println("e:"+e);
//重新赋值,新赋值替换原来赋值
System.out.println("------分隔符------");
a=100;
b=1.1123;
c="大魔王";
d='b';
e=false;
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("d:"+d);
System.out.println("e:"+e);
}
}
输出结果:
a:10
b:2.2
c:王大锤
d:a
e:true
------分隔符------
a:100
b:1.1123
c:大魔王
d:b
e:false
8.在主函数中分别定义合适类型的变量或常量,来保存以下数据:
1)圆周率pi
2)用户输入的任意内容
3)用户输入的数字
然后再输出这些数据
import java.util.Scanner;
public class Problem8 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//定义常量PI/pi
final double PI=3.141593;
System.out.println(PI);
System.out.println("请输入任意内容:");
//程序停下来等待用户输入String任意字符串
String str=sc.next();
//输出字符串
System.out.println(str);
System.out.println("请输入任意数字:");
//程序停下等待用户输出任意的数字
double a=sc.nextDouble();
//判断是整数还是小数
if(a==(int)a){
System.out.println("你输入的数字是:");
System.out.print((int)a);
}else{
System.out.println("你输入的数字是:");
System.out.println(a);
}
}
}
输出结果:
3.141593
请输入任意内容:
我爱北京天安门
我爱北京天安门
请输入任意数字:
65.5
你输入的数字是:
65.5
9.提示用户输入一个数字(可以是小数),然后输出用户输入的数字,类似于下面的效果(要求所有的输出代码只能使用不换行输出):
请输入一个数字:
5.2
你输入的数字是:
5.2
import java.util.Scanner;
public class Problem9 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("请输入一个数字(可以是小数):");
//程序停下来等待用户输入double类型的数字
double d=sc.nextDouble();
// 如果输入整数类型, 需要将d强制转换为int类型,需要用条件判断语句
if(d==(int)d){
System.out.print("你输入的数字是:");
System.out.print("\n");
System.out.print((int)d);
}else{
System.out.print("你输入的数字是:");
System.out.print("\n");
System.out.print(d);
}
}
}
输出结果1:
请输入一个数字(可以是小数):65.5
你输入的数字是:
65.5
输出结果2:
请输入一个数字(可以是小数):66
你输入的数字是:
66
10.在控制台输出下面哪些变量是合法的命名,哪些不是,为什么不是?
home
void
class
2test
test2
_2t
_t2
$5
public class Problem10 {
public static void main(String[] args) {
System.out.println("在控制台输出下面哪些变量是合法的命名,哪些不是,为什么不是?,home,void,class,2test,test2,_2t,_t2,$5");
System.out.println("home,test2,_2t,_t2,$5是合法的命名,因为变量命名硬性要求:A.变量名不能是与关键字同名;");
System.out.println("B.可以包含字母、数字、_、$,但不能以数字开头;");
System.out.println("C.不能与同作用域中的其他标识符相同。");
System.out.println("而void、class是关键字,2test数字在前面,不符合标准。");
}
}
输出结果:
在控制台输出下面哪些变量是合法的命名,哪些不是,为什么不是?,home,void,class,2test,test2,_2t,_t2,$5
home,test2,_2t,_t2,$5是合法的命名,因为变量命名硬性要求:A.变量名不能是与关键字同名;
B.可以包含字母、数字、_、$,但不能以数字开头;
C.不能与同作用域中的其他标识符相同。
而void、class是关键字,2test数字在前面,不符合标准。
11.分别提示用户输入矩形的宽高,保存到合适的变量中(注意命名规范),然后输出用户输入的宽高,类似于下面的效果:
请输入矩形的宽度:5.3
请输入矩形的高度:2
您输入的矩形宽是"5.3",高是"2"
import java.util.Scanner;
public class Problem11 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入矩形的宽度:");
double width=scan.nextDouble();
System.out.println("请输入矩形的高度:");
double height=scan.nextDouble();
System.out.println("您输入的矩形宽是"+"\""+width+"\","+"高是"+"\""+height+"\"");
}
}
输出结果:
请输入矩形的宽度:
5.6
请输入矩形的高度:
4.3
您输入的矩形宽是"5.6",高是"4.3"
12.在控制台输出一个512M的内存条,理论上可以存放多少个int类型的变量。(输出计算过程即可)
public class Problem12 {
public static void main(String[] args) {
System.out.println("12.在控制台输出一个512M的内存条,理论上可以存放多少个int类型的变量。(输出计算过程即可)");
System.out.println("512M=512*1024KB");
System.out.println("=512*1024*1024Byte");
System.out.println("int类型变量占8Byte");
System.out.println("理论上可以存放512*1024*1024/8个int类型的变量");
}
}
输出结果:
12.在控制台输出一个512M的内存条,理论上可以存放多少个int类型的变量。(输出计算过程即可)
512M=512*1024KB
=512*1024*1024Byte
int类型变量占8Byte
理论上可以存放512*1024*1024/8个int类型的变量
13.定义两个整型变量,分别给其赋值,输出两个变量的值,然后交换两个变量的值,然后再输出。
public class Problem13 {
public static void main(String[] args) {
System.out.println("13.定义两个整型变量,分别给其赋值,输出两个变量的值,然后交换两个变量的值,然后再输出。");
int a=1;
int b=2;
System.out.println("---交换前---");
System.out.println("a="+a);
System.out.println("b="+b);
System.out.println("---交换后---");
int temp;
temp=a;
a=b;
b=temp;
System.out.println("a="+a);
System.out.println("b="+b);
}
}
输出结果:
13.定义两个整型变量,分别给其赋值,输出两个变量的值,然后交换两个变量的值,然后再输出。
---交换前---
a=1
b=2
---交换后---
a=2

浙公网安备 33010602011771号