一.掌握
1.Java的运行机制
计算机该机语言类型主要有编译型和解释型两种,Java是两种类型的集合。在Java中源文件名称的后缀为.java,之后通过编译使.java的文件生成一个.class文件,在计算机上执行.class文件,但是此时执行*.class的计算机并不是一个物理上可以看到的计算机,而是Java自己设计的一个计算机——JVM,Java也是通过JVM进行可以执行操作的。Java中所有的程序都是在JVM上运行的。
2.JDK ,JVM ,JRE的作用与关系
JRE是Java的运行环境,JDK是Java的开发工具包。JVM是让Java能在任何平台运行的虚拟机,其中JDK包含JRE和TOOLS,而JRE下包含类库和JVM。
3.环境配置中,PATH和CLASSPATH的作用是什么?
PATH环境变量。作用是指定命令搜索路径,在i命令行下面执行命令如javac编译Java程序时,它会到PATH变量所指定的路径中查看是否能找到相应的命令程序。我们需要吧jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。
CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.ja设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。
4.区分C语言与Java对应数据类型的不同,数据类型的转换
数据类型在程序语言的构成要素中占有相当重要的地位。Java的数据类型可分为基本数据类型与引用数据类型。
5.Java基础语法
public class “类名”{
public static void main(String[] args){
____________________
........................................
System.out.println(“............”); }
}
Java的运行机制
通过前三章中学习到:
一个Java程序只能声明一个public class,但允许声明多个class,编译后会分别形成不同的.class文件。
标识符是指类、方法、常量、变量、接口和包等的名称。
在Java语言中,标识符取名的规则是:必须由字母、下划线_或美元符$开头;并由字母、0─9的数字、下划线_或美元符$组成的;不能与关键字名或布尔值(true和false)同名;Java语言严格区分大小写。
任何类型的数据都向String类型转换。String类定义时单词的首字母大写。
String属于引用数据类型,是一个类,用于表示字符串,用“”声明内容,用“+”进行字符串的连接操作。而String中有两种比较方法,用“==”或“equals”,“==”用来进行数值比较,而后者用来进行字符串的比较。New是关键字,如果存在相同内容但是定义中出现new,则说明在堆内存中开辟了新的空间,内容相同但是地址发生变化。若用“equals”进行比较结果还是“True”,但是若用“==”结果则为“False”。这是两种比较的差别。
二.学习总结
1.文本扫描类Scanner(java .util.Scanner),可以使用不同的next方法将输入的文本转换为不同类型的值。
获取基本类型数据的方法是:
> nextInt() :读取整型数据
nextDouble() :读取双精度数据 next()—读取输入的下一个单词(空格作为分隔符) nextLine():读取输入的 下一行内容 Scanner input=new Scanner(System.in);
例.输入数字求奇偶
import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner in=new Scanner(System.in); System.out.print("请输入数字: "); int input=in.nextInt(); //读取一行数据 int remain = input % 2; // 求除 2 的余数 >if(remain == 1) // 如果余数为1 { System.out.println(input + "为奇数"); } else { System.out.println(input + "为偶数"); } } }
2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?
Math类是数学操作类,提供了一系列的数学操作方法,包括求绝对值、三角函数等,在Math类中提供的一切方法都是静态方法,所以直接由类名称调用即可。
Random类是随机数产生类,可以指定一个随机数的范围,然后任意产生在此范围中的数字。Random类中的常用方法如下
例,产生一个100以内的整数:
int x=(int)(Math.random()*100)
而Random产生随机数:
Random r=new Random();
三.实验总结
程序设计思路
猜数实验,使系统产生随机数,输入数字,将随机数和所输入的数字进行对比。利用函数调用,产生随机数和比较数字。
万年历,区分好闰年平年还有二月的天数,已知1900年1月1日是星期一,计算天数,推断日期。
问题(1):要求所猜次数不大于十,如何统计所猜次数
解决方法:用while语句提前约束次数小于十,在while语句里面进行if循环对比数字,最后用time++统计次数。
问题(2):结果出现错误
解决方法:重新计算天数,查找程序错误更改。
四.代码托管(https://git.oschina.net/hebau_cs15/Java-cs01zzy.git)
五.学习进度条
代码行数(新增/累积) | 学习时间(新增/累积) | 本周学习内容 | |
---|---|---|---|
目标 | 5000行 | 300小时 | |
第2-4周 | 200/200 | 15/15 | 学习了两种比较方法和产生随机数的方法,还有Java的一些基础信息 |
第5周 | |||
第6周 |