40956679的博客
import java.util.*; //引用 java.util 包
public class KY6_1 {
private int year,month,day;
public static void main(String[] args){}
public KY6_1 (inty,int m,int d) {
year = y;
month = (((m>=1) & (m<=12)) ? m : 1);
day = (((d>=1) & (d<=31)) ? d : 1);
}
public static int thisyear() {
return Calendar.getInstance().get(Calendar.YEAR);//返回当年的年份
}
public int year() {
return year;//返回年份
}
public String toString(){
returnyear+"-"+month+"-"+day;//返回转换为字符串的年-月-日
}
}
3)编译KY6_1.java 文件,然后将KY6_1.class 文件存放到 Mypackage 文件夹中(D:\java\javacode\Mypackage)。注意:先不运行程序KY6_1.class!
4.编写一个需要使用到包 Mypackage 中的KY6_1 类的程序KY6_2.java。
1) 编写 KY6_2.java 程序:给定某人姓名与出生日期,计算该人年龄,并输出该人姓名,年龄,出生日期。程序使用了KY6_1 的方式来计算年龄。
2) 源代码如下。
import Mypackage.KY6_1; //引用 Mypackage 包中的KY6_1 类
public class KY6_2
{
private String name;
private KY6_1 birth;
public static void main(String args[])
{
KY6_2 a = new KY6_2("张驰",1990,1,11);
a.output();
}
public KY6_2 (Stringn1, int y, int m, int d)
{ //初始化变量与对象
name = n1;
birth = newKY6_1(y, m, d);
}
public int age() //计算年龄
{
return birth.year() - KY6_1.thisyear(); //返回当前年与出生年的差即年龄
}
public void output()
{
System.out.println("姓名 : "+name);
System.out.println("出生日期: "+birth.toString());
System.out.println("今年年龄 : "+age());
}
}
3) 编译KY6_2.java 程序并运行程序KY6_2.java
4) 在试验报告中写出该程序的运行结果。
5) 程序运行的结果有没有问题?问题出在那里?请在实验报告中强调。
(二)使用接口技术
定义两个接口,其中各包含一个抽象原则分别用来完成两个数的加法和乘法操作,然后建立一个类KY6_3来实现这两个接口中的抽象原则。编写程序KY6_3.java,将源程序写在实验报告中。
1.利用以下的关键代码编写一个完整的程序KY6_4.java,理解Math类的使用。
System.out.println (Math.abs(-5.8));
System.out.println (Math.ceil(3.2));
System.out.println (Math.floor(3.8))
System.out.println (Math.round(3.8));
System.out.println (Math.round(3.2));
System.out.println (Math.min (3, 2));
System.out.println (Math.max (Math.PI, 4));
System.out.println (Math.log(7.0));
System.out.println (Math.pow(7,2));
System.out.println (Math.exp (0.4));
System.out.println ("e is:"+Math.e);
System.out.println ("π is:"+Math.PI);
System.out.println(Math.random());
2.将程序的运行结果写在实验报告中。
(四)String类与StringBuffer类的使用
1.利用以下的关键代码编写一个完整的程序KY6_5.java,理解String类与StringBuffer类的使用。
String s=new String("This is andemo of the String method.");
System.out.println("Length:"+s.length());
System.out.println("SubString:"+s.substring(11,15));
StringBuffer sf=newStringBuffer("Hello World!");
sf.append(" Hello Java!");
sf.insert(12," And");
System.out.println(sf);
System.out.println(sf.charAt(0));
sf.setCharAt(0,''h'');
System.out.println(sf.charAt(0));
System.out.println(sf);
2.将程序的运行结果写在实验报告中。
3.算术运算需要使用什么类?
4.Java语言中怎样表示字符串?
1.理解数据流的概念
2.理解Java流的层次结构
3.理解文件的概念
1.掌握字节流的基本使用方式
2.掌握字符流的基本使用方式
3.能够构建、读写、更新文件
标准数据流指在字符模式下(如DOS提示符)程序与平台进行输入输出的形式,键盘跟显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。
1. 程序功能:将屏幕上输入的字符在屏幕上显示出来
2. 编写KY10_1.java 程序文件,源代码如下。
class KY10_1{
public staticvoid main(String[] args) throws java.io.IOException {
bytebuffer[]=new byte[10];
System.out.println("从键盘键入不超过10 个字符,按回车键结束输入:");
int count=System.in.read(buffer);//读取输入的字节并保存在缓冲区buffer 中
System.out.println("保存在缓冲区buffer 中元素的个数为:"+count);
System.out.println("buffer中各元素的值为:");
for (inti=0;i<count;i++){
System.out.print(""+ buffer[i]);//在屏幕上显示buffer 元素的值
}
System.out.println();
System.out.println("输出buffer 字符元素:");
System.out.write(buffer,0, buffer.length);
}
}
3. 编译、运行KY10_1.java文件。
1. 程序功能:将储存在本地机当前文件夹中的KY10_2.HTML 文本文件的内容在屏幕上显示出来测试教案怎么写,然后将其另存为KY10_2.txt文件。
2. 编写KY10_2.java 程序文件,源代码如下
import java.io.*;
public class KY5_4 {
public static void main(String[] args) throws IOException {
FileReader in=new FileReader("KY5_1.HTML");//建立文件输入流
BufferedReader bin=new BufferedReader(in);//建立缓冲输入流
FileWriter out=new FileWriter(" KY5_1.txt",true);//建立文件输出流
String str;
while ((str=bin.readLine())!=null) {
//将缓冲区内容通过循环形式逐行赋值给字符串str
System.out.println(str);//在屏幕上显示字符串str
out.write(str+"\n");//将字符串str 通过输出流读取KY5_1.txt 中
}
in.close();
out.close();
}
}
3. 编译、运行程序
1.程序功能:从屏幕写入一行字符,并将其转化成大写打印在键盘,当键入exit字符串时退出。
2. 编写KY10_3.java 程序文件,源代码如下
import java.io.*;
public class KY10_3 {
public static void main(Stringargs[]) {
InputStreamReader isr =
newInputStreamReader(System.in);
BufferedReader br = newBufferedReader(isr);
String s = null;
try {
s = br.readLine();
while(s!=null){
if(s.equalsIgnoreCase("exit")) break;
System.out.println(s.toUpperCase());
s = br.readLine();
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
3. 编译、运行程序
使用数据输入流DataOutputStream 和数据输出流DataInputStream 可以调用或读取任何Java 类型的数据,不用关心他们的实际重量是多少字节。一般与文件输入流FileInputStream和输出流类
FileOutputStream 一起使用。
1.程序功能:将整型数据和字符串对象通过数据输出流写到文件中。将文件中的整型数据和字符串对象通过数据输出流读出,并在屏幕上显示文件中的内容。
2.编写KY10_4.java 程序文件,源代码如下。
importjava.io.*;
public class KY10_4
{
public staticvoid main(String arg[])
{
try
{ //添加方式创建文件输出流
FileOutputStreamfout = new FileOutputStream("KY5_6.txt",true);
DataOutputStreamdout = new DataOutputStream(fout);
dout.writeInt(1);
dout.writeChars("罗马"+"\n");
dout.writeInt(2);
dout.writeChars("北京"+"\n");
dout.close();
}
catch(IOException ioe){}
try
{
FileInputStreamfin = new FileInputStream("KY5_6.txt");
DataInputStreamdin = new DataInputStream(fin);
可以借此立即宣布南海防空识别区