1、课程收获与不足
自己的收获
经过一个学期的JAVA课程学习,现在虽说算不上什么专业的JAVA程序员,但我还是很有收获。了解了这门语言,探索了这门语言,认知了这门语言。我从一个什么都不懂的菜鸟,到现在能够自己编一个简单的程序并使其跑起来,在本学期末还与小组成员成功编译运行了一个JAVA游戏,感觉十分有成就感呢!回首之前的学习历程,要想真正有所学,有所得,必须持之以恒,踏踏实实的跟着娄老师的“方针政策”走,不要有排斥心理。刚开始学习JAVA的时候的确不习惯,觉得很累,每周的java学习与博客总结都会占用周末业余时间。不过心态一定要好,反正要做,还不如把它做好,不要敷衍自己。万事开头难,习惯成自然!哈哈哈,虽然已经学了一学期JAVA了,但其实还有好多好多东西是需要自己去探索的。学习JAVA应该是循环渐进,按部就班,脚踏实地的。对了,JAVA课程是我第一次接触翻转课堂,翻转课堂讲究的是自己主动学习,主动探索,然后把问题反馈给老师,老师在课堂上解答。不过由于c语言学的不是很好,所以刚开始看到JAVA的时候,看着源代码,都不知道是什么意思,看书的时候一看到源代码就头疼,因为根本看不懂,那段时间挺挫败的。不过幸好每周都要考试!所以这也是驱动我学习的一个主要原因,想要拿高分,就得花时间看,把不懂的想尽办法弄懂。于是最开始最艰难的那段时间,我大部分课下时间都花在JAVA上,不懂的问高其和周正一,再加上翻书,网上查阅资料。三周下来,效果也挺明显的,并且我觉得JAVA这门语言虽然很高级但并不复杂,很多功能都是可以直接调用的,不需要自己亲手去编。世上无难事,只怕有心人。对于任何新生事物,我们首先不要排斥,如果可以,带着兴趣去探索,必定其乐无穷!受益匪浅!这学期也是我第一次接触到博客园。我感觉博客园真的是一个集思广益的地方,大家可以把自己的学习心得体会都通过博客的形式发表出来,然后其他人就可以去阅读、去参考别人成功的方法,有什么问题也可以建立一个小组,然后博主会和大家互动,共同探讨,解决问题。一学期的博客园生涯让我逐渐喜欢上了这里。记住,学JAVA,一定要做到课前预习与课后复习,书上的概念要理解透彻,代码一定要过手;多和同学沟通,互相学习,取长补短。娄老师说过,知识是学不完的,重要的是要找到一种适合自己的高效的学习方法,这将受益终生。
2、自己需要改进的地方
我觉得应该多看别人的博客,多与别人进行交流,但是本学期学习压力较大,这方面做得不够好,所以这是我的一大遗憾!其次,对JAVA的不同库的掌握需要增进,一旦对JAVA各种库的引用融会贯通,对较大程序的编写就能事半功倍,效率远超C语言,这也是JAVA最吸引我的一个地方。还有就是学JAVA千万不要浮躁,不要赶进度。说到浮躁,这也是一个很值得我深思的问题,我觉得我刚开始还没完全接受JAVA的时候,就比较浮躁。做事停留在表面,敷衍。经过后来逐渐调整,才慢慢改变。真正学习的时候,浮躁会使你失去很多。
如果有结对,写一下你提供的帮助或接受了什么帮助,并对老师提供参考意见
在实验三和实验五阶段都有结对的部分。通过结对,我深刻地明白了团队合作的重要性。团队精神能推动团队运作和发展。在团队精神的作用下,团队成员产生了互相关心、互相帮助的交互行为,显示出关心团队的责任感,并努力自觉地维护团队的集体荣誉。我觉得结对编程这一环节很好,不仅让大家能够明确分工,合作的编写出程序,而且能培养大家的默契,让我们能够在实际 *** 作过程中更好的编写代码。要想成功编写程序,这一过程是很复杂的,而团队方式可以使其简单许多,遇到问题的时候可以大家一起想,集思广益,而且团队 *** 作在很大程度上还可以实现优势的互补(比如git代码,然后共享)。
3、给学弟学妹们的意见
如果重新学习这门课,怎么做才可以学得更好?
如果可以重新学习这门课的话,我想我会做的更好。首先我会找一本好的书本教材,然后辅助看教学视频。因为翻转课堂更强调的是自己主动学习,主动探索,主动发现问题。一本好的教材,可以让你更快更好的进入Java的世界,然后看视频是一种比较直观的辅助学习方式。建议先看课本,发现不懂的地方,再结合视频,这样效果更好,如果视频上没有讲到的,就通过其他方式解决。老师之前会发视频链接,那里面讲的内容(毕向东老师主讲)都很不错。书上概念与代码搞懂了后,自己一定要主动动手敲代码!因为看懂和学懂完全是两回事,一定要学好基本语法,弄清Java语言的特点。刚开始学习时,有些知识可能有些难懂,自己也不会敲代码。不过这没关系,这很正常。多看多问,多实践,慢慢的你就入门了。千万不要投机取巧!主动敲代码真的是学JAVA的精髓!JAVA和其他的编程语言一样,在学懂理论后,一定要实践。只有多动手编程,哪怕是简单的小程序,重复实现书上简单的例子,也是在积累和提高。
4、问卷调查
你觉得这门课老师应该继续做哪一件事情?
老师应该继续要求扇贝打卡与五笔打字练习,然后期末加分。这种方法很值得提倡,希望能够继续做下去。这不仅可以调动大家学习的积极性,而且还让我们的英语水平提高了很多,对于四六级以及以后在工作中打字速度等其他的方面都有很大的帮助。在博客园里发表博客也是很好的一种总结心得体会的方法,值得提倡。博客园是一个集思广益的地方,大家把自己的学习心得体会都通过博客的形式发表出来,然后大家可以交流意见,有什么不懂的也可以直接在问题小组里提出来,共同探讨,共同解决问题。这种感觉很棒。对了,每周一考我也觉得这必不可少,可以敦促学生的学习进度。
你觉得这门课老师应该停止做哪一件事情?
感觉每周的学习任务还是偏重了,几乎要占据半个周末的时间来搞JAVA。老师应根据每周学习内容的难易程度,合理调配学习任务量。
你觉得这门课老师应该开始做什么新的事情?
希望老师在课上多讲一点关于教材知识的内容(包括实验),让我们能够更高效更有针对性的去学习JAVA。因为教材的内容太多,盲目的去看就会浪费很多时间。如果因为赶进度,只是囫囵吞枣的看一遍教材的话,我们就不能很好的去理解java的相关知识。
importjavaio;
importjavaioFile;
importjavaioFileReader;
importjavaioFileWriter;
importjavaioIOException;
publicclassNewTxt{
publicstaticvoidmain(String[]args)throwsIOException{
intn=5;//NN数组
double[][]arr=newdouble[n][n];//插入的数组
double[][]arr2=newdouble[n][n];;//读取出的数组
//数组初始化,随机生成的[0,100)之间的double数
for(inti=0;i
for(intj=0;j
arr[i][j]=Mathrandom()100;
Systemoutprintln(arr[i][j]);
}
}
Filefile=newFile("d:\arraytxt");//存放数组数据的文件
FileWriterout=newFileWriter(file);//文件写入流
//将数组中的数据写入到文件中。每行各数据之间TAB间隔
for(inti=0;i
for(intj=0;j
outwrite(arr[i][j]" ");
}
outwrite("");
}
outclose();
in=new(newFileReader(file));//
Stringline;//一行数据
introw=0;
//逐行读取,并将每个数组放入到数组中
while((line=inreadLine())!=null){
String[]temp=linesplit(" ");
for(intj=0;j
arr2[row][j]=DoubleparseDouble(temp[j]);
}
row;
}
inclose();
//显示读取出的数组
for(inti=0;i
for(intj=0;j
Systemoutprint(arr2[i][j]" ");
}
Systemoutprintln();
}
}
}
你自己啥也不参考,自己写个学生信息管理系统。就差不多了。然后再写个生产者和消费者的关系,(线程)。
神啊 ,,原来是你问的啊。。呵呵。我去找找。
简答、论述、程序设计
1、请问 ”2” 、’2’、2之间有什么不同?并回答下面程序的输出结果是什么 (提示:‘2’的ASCII码值是50 )(8分)
class test
{
public static void main(String[] args)
{
int a=2;
int b='2';
Systemoutprintln (a+a);
Systemoutprintln (a+b);
}
}
2、你认为java、C、C++他们之间有没有联系和区别?和C、C++相比,java有哪些优点?(10分)
3、下面两段代码具有多处错误,请找出你认为错误的地方,作上标记,并说明为何出错。如果你认为该行没有错误,请打上√ (12分)
i)public int search (int [10] number) 1、 ______________________
{
number = new int[10]; 2、 ______________________
for (int i=0;i<numberlength;i++) 3、_______________________
{
number[i]=number[i-1]+number[i+1]; 4、_______________________
return number; 5、_______________________
}
}
ii)
class MyclassOne
{
public final int A=365;
public int b;
private float c;
private void myMethodOne(int a)
{
b=a;
}
public float myMethodTwo()
{
return 36;
}
}
class MyClassMain
{
public static void main(String[] args)
{
MyClassOne w1=new MyClassOne();
w1A=12; 6、______________________
w1b=12; 7、_______________________
w1c=12; 8、_______________________
w1myMethodOne(12); 9、_______________________
w1myMethodOne(); 10、_____________________
Systemoutprintln(w1myMethodTwo(12)); 11、___________________
w1c=w1myMethodTwo(); 12、____________________
}
}
请简要说明下面程序的功能
1) public class Sum ( 5分 )
{ public static void main( String args[ ])
{ double sum = 00 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += 10/(double) i ;
Systemoutprintln( "sum="+sum );
}
}
程序设计:(10分)
编写一个java程序。要求该程序能够具有以下功能:
定义一个坐标类coord。坐标类coord必须满足如下要求:
a)coord类含有两部分数据:横坐标x和纵坐标y。x和y的类型都是int类型。
b)coord类的方法有:
coord( ) : 构造函数,将横坐标和纵坐标的值都赋值为0
coord( int x , int y ) : 构造函数,形参 x 为横坐标的初值,y为纵坐标的初值。
coord coordAdd(int x, int y) : 将当前坐标对象与形参的值相加,所得的结果仍是一个坐标,返回给此方法的调用者。
(提示:可以将两个坐标相加定义为横坐标和横坐标相加,纵坐标和纵坐标相加。例如(1,2)+(3,4)=((1+3),(2+4))=(4,6))
程序设计:(10分)
请编写一个java程序,利用该程序计算并输出 1+2+3+……+100的值
答案
1、请问 ”2” 、’2’、2之间有什么不同?并回答下面程序的输出结果是什么 (提示:‘2’的ASCII码值是50 )(8分)
答:"2"是字符串,'2'算字符。2是数字。
class test
{
public static void main(String[] args)
{
int a=2;
int b='2';
Systemoutprintln (a+a);
Systemoutprintln (a+b);
}
} 输出结果为:4
52
2、你认为java、C、C++他们之间有没有联系和区别?和C、C++相比,java有哪些优点?(10分)
答:java是以c及c++为基础的。许多地方沿用了它们的思想。但最主要的,java是完全面向对象的编程,而c是面向过程,c+则不完全是面向对象。java相对说来,编程更方便,安全,结构,模块化强,易于移植,跨平台性好等。
3、下面两段代码具有多处错误,请找出你认为错误的地方,作上标记,并说明为何出错。如果你认为该行没有错误,请打上√ (12分)
i)public int search (int 错[10] number) 1、 引用时只能是类型不能带值{
number错 = new int[10]; 2、 数组没有下标
for (int i=0;i<numberlength;i++) 3、对
{
number[i]=number[i-1]+number[i+1]错; 4、数组在i+1在i=numberlength-1是超界
return number; 5、对
}
}
ii)
class MyclassOne
{
public final int A=365;
public int b;
private float c;
private void myMethodOne(int a)
{
b=a;
}
public float myMethodTwo()
{
return 36;
}
}
class MyClassMain
{
public static void main(String[] args)
{
MyClassOne w1=new MyClassOne();
w1A=12; 6、错误,试图给final型再次赋值
w1b=12; 7、对Myclassone中b赋值
w1c=12; 8、对myclassone float c赋值
w1myMethodOne(12); 9、调用myclassone的mymethodone形参为int的方法,
w1myMethodOne(); 10、调用myclassone的mymethodone无形参的方法Systemoutprintln(w1myMethodTwo(12)); 11、输出myclassone的mymethodtwo(12)值
w1c=w1myMethodTwo(); 12让c引用mymethodtwo方法
}
}
请简要说明下面程序的功能
1) public class Sum ( 5分 )
{ public static void main( String args[ ])
{ double sum = 00 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += 10/(double) i ;
Systemoutprintln( "sum="+sum );
}
} 功能为 求出1/1+1/2+1/3+1/4…+1/100的和
程序设计:(10分)
编写一个java程序。要求该程序能够具有以下功能:
定义一个坐标类coord。坐标类coord必须满足如下要求:
a)coord类含有两部分数据:横坐标x和纵坐标y。x和y的类型都是int类型。
b)coord类的方法有:
coord( ) : 构造函数,将横坐标和纵坐标的值都赋值为0
coord( int x , int y ) : 构造函数,形参 x 为横坐标的初值,y为纵坐标的初值。
coord coordAdd(int x, int y) : 将当前坐标对象与形参的值相加,所得的结果仍是一个坐标,返回给此方法的调用者。
(提示:可以将两个坐标相加定义为横坐标和横坐标相加,纵坐标和纵坐标相加。例如(1,2)+(3,4)=((1+3),(2+4))=(4,6))
public class Coord {
int x=100;
int y=200;
public Coord(){
thisx=0;thisy=0;
}
public Coord(int x,int y) {
x=thisx;y=thisy;
}
void coordAdd(int x,int y){
thisx+=x;
thisy+=y;
}
public static void main (String[] args) {
}
}
程序设计:(10分)
请编写一个java程序,利用该程序计算并输出 1+2+3+……+100的值
Sumjava
public class Sum {
public Sum() {
int sum=0;
for(int i=1;i<=100;i++)
sum+=i;
Systemoutprintln("1+2+3+100="+sum);
}
public static void main (String[] args) {
new Sum();
}
}
Java试题(一)
一、 选择
1欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的 ?
A ArrayList myList=new Object();
B List myList=new ArrayList();
C ArrayList myList=new List();
D List myList=new List();
2paint()方法使用哪种类型的参数
A Graphics
B Graphics2D
C String
D Color
3指出正确的表达式
A byte=128;
B Boolean=null;
C long l=0xfffL;
D double=09239d;
4指出下列程序运行的结果
public class Example{
String str=new String("good");
char[]ch={'a','b','c'};
public static void main(String args[]){
Example ex=new Example();
exchange(exstr,exch);
Systemoutprint(exstr+" and ");
Sytemoutprint(exch);
}
public void change(String str,char ch[]){
str="test ok";
ch[0]='g';
}
}
A good and abc
B good and gbc
C test ok and abc
D test ok and gbc
5运行下列程序, 会产生什么结果
public class X extends Thread implements Runable{
public void run(){
Systemoutprintln("this is run()");
}
public static void main(String args[])
{
Thread t=new Thread(new X());
tstart();
}
}
A 第一行会产生编译错误
B 第六行会产生编译错误
C 第六行会产生运行错误
D 程序会运行和启动
6要从文件" filedat"文件中读出第10个字节到变量C中,下列哪个方法适合
A FileInputStream in=new FileInputStream("filedat"); inskip(9); int c=inread();
B FileInputStream in=new FileInputStream("filedat"); inskip(10); int c=inread();
C FileInputStream in=new FileInputStream("filedat"); int c=inread();
D RandomAccessFile in=new RandomAccessFile("filedat"); inskip(9); int c=inreadByte();
7容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?
A CardLayout
B FlowLayout
C BorderLayout
D GridLayout
8给出下面代码:
public class Person{
static int arr[] = new int[10];
public static void main(String a[])
{
Systemoutprintln(arr[1]);
}
}
那个语句是正确的?
A 编译时将产生错误;
B 编译时正确,运行时将产生错误;
C 输出零;
D 输出空。
9哪个关键字可以对对象加互斥锁?
A transient
B synchronized
C serialize
D static
10下列哪些语句关于内存回收的说明是正确的
A 程序员必须创建一个线程来释放内存;
B 内存回收程序负责释放无用内存
C 内存回收程序允许程序员直接释放内存
D 内存回收程序可以在指定的时间释放内存对象
11下列代码哪几行会出错:
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I 2;
6) Systemoutprintln (" The value of j is " + j );
7) k = k + 1;
8) I--;
9) }
10) }
A line 4
B line 6
C line 7
D line 8
二、多项选择
1执行下列代码后,哪个结论是正确的 String[] s=new String[10];
A s[10] 为 "";
B s[9] 为 null;
C s[0] 为 未定义
D slength 为10
2下面的表达式哪个是正确的
A String s="你好";int i=3; s+=i;
B String s="你好";int i=3; if(i==s){ s+=i};
C String s="你好";int i=3; s=i+s;
D String s="你好";int i=3; s=i+;
E String s=null; int i=(s!=null)&&(slength>0)slength():0;
3选出合理的标识符
A _sys1_lll
B 2mail
C $change
D class
4哪个布局管理器使用的是组件的最佳尺寸( preferred size)
A FlowLayout
B BorderLayout
C GridLayout
D CardLayout
EGridBagLayout
5下列哪个方法可用于创建一个可运行的类
A public class X implements Runable{ public void run(){ } }
B public class X implements Thread{ public void run(){ } }
C public class X implements Thread{ public int run(){ } }
D public class X implements Runable{ protected void run(){ } }
Epublic class X implements Thread{ public void run(){ } }
6下面哪个方法可以在任何时候被任何线程调用
A notify()
B wait()
C notifyAll()
D sleep()
Eyield()
Fsynchronized(this)
7构造BufferedInputStream的合适参数是哪个
A BufferedInputStream
B BufferedOutputStream
C FileInputStream
D FileOuterStream
E File
8下列说法正确的是
A javalangClonable是类
B javalangRunnable是接口
C Double对象在javalang包中
D Double a=10是正确的java语句
9指出正确的表达式
A double a=10;
B Double a=new Double(10);
C byte a = 340;
D Byte a = 120;
10定义一个类名为"MyClassjava"的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为:
A private class MyClass extends Object
B class MyClass extends Object
C public class MyClass
D public class MyClass extends Object
11指出下列哪个方法与方法public void add(int a){}为合理的重载方法。
A public int add(int a)
B public void add(long a)
C public void add(int a,int b)
D public void add(float a)
12如果下列的方法能够正常运行,在控制台上将显示什么?
public void example(){
try{
unsafe();
Systemoutprintln("Test1");
}
catch(SafeException e)
{Systemoutprintln("Test 2");}
finally{Systemoutprintln("Test 3");}
Systemoutprintln("Test 4");
}
A Test 1
B Test 2
C Test 3
D Test 4
13下列哪些情况可以终止当前线程的运行?
A 抛出一个例外时。
B 当该线程调用sleep()方法时。
C 当创建一个新线程时。
D 当一个优先级高的线程进入就绪状态时。
三、 填空题
1执行下列代码后的结果是什么 int x,a=2,b=3,c=4; x=++a+b+++c++;
2 包包含了Collection的接口和类的API
3main方法的声明格式包括
4下列程序中构造了一个SET并且调用其方法add(),输出结果是
public class A{
public int hashCode(){return 1;}
public Boolean equals(Object b){return true}
public static void main(String args[]){ Set set=new HashSet();
setadd(new A());
setadd(new A());
setadd(new A());
Systemoutprintln(setsize());
}
}
5下列程序的运行结果是
class A{
class Dog{
private String name;
private int age;
public int step;
Dog(String s,int a)
{
name=s;
age=a;
step=0;
}
public void run(Dog fast)
{
faststep++;
}
}
public static void main (String args[])
{
A a=new A();
Dog d=anew Dog("Tom",3);
dstep=25;
drun(d);
Systemoutprintln(dstep);
}
}
四、 编程题
1编写一个输出"Hello World!"的程序,用两种方式实现(Application、Applet)。
2打印输出10行杨晖三角形
3有下面一段Server段程序,目的是能够同时服务多个客户,客户的请求是一句话(一个 String)。如果这个请求的内容是字符串"plain"的话,服务器仅将"hello"字符串返回给用户。否则将用户的话追加到当前目录的文本文件 Memotxt中(路径为"Memotxt"),并向用户返回"OK"。注意Server并发的处理多用户,Memotxt被共享,要求不能出现数据不一致。Server的程序如下文件Serverjava:
public class Server{
public static void main(String args[]){
MemoController memoController = new MemoController();
try{
ServerSocket ss = new ServerSocket(1999);
while (true){
Socket s = ssaccept();
try{
UserThread t = new UserThread(s, memoController);
tstart();
}catch(Exception e){
eprintStackTrace();
}
}
}catch(Exception e){
eprintStackTrace();
}finally{
memoControllerclose();
}
}
}
类UserThread程序如下:
文件UserThreadjava:
public class UserThread extends Thread{
Socket s;
MemoController memo;
public UserThread (Socket s, MemoController memo){
thiss = s;
thismemo = memo;
}
public void run(){
try{
BufferedReader br = new BufferedReader(new InputStreamReader(sgetInputStream()));
PrintWriter pw = new PrintWriter(new OutputStreamWriter(sgetOutputStream()));
String req = brreadLine();
if (reqequals("plain")){
pwprintln("hello");
}else{
memoappend(req);
pwprintln("OK");
}
pwflush();
pwclose();
brclose();
sclose();
}catch(Exception e){
eprintStackTrace();
}
}
}
请根据题目的要求和现有的Serverjava, UserThreadjava的程序完成类MemoControllerjava的程序。
4用输入/输出写一个程序,让用户输入一些姓名和电话号码。每一个姓名和号码将加在文件里。用户通过点"Done"按钮来告诉系统整个列表已输入完毕。 如果用户输入完整个列表,程序将创建一个输出文件并显示或打印出来。 格式如:555-1212,Tom 123-456-7890,Peggy L 234-5678,Marc 234-5678,Ron 876-4321,Beth&Brian 331424570,Jean-Marc
四、 编程题答案
1
public class HelloWorld
{
public static void main(String args[])
{
Systemoutprintln("Hello,World!");
}
}
import javaawtGraphics;
import javaappletApplet;
public class HelloWorld extends Applet{
String s;
public void init(){
s="Hello World!";
}
public void paint(Graphics g){
gdrawString(s,25,25);
}
}
2
class yanghui
{
public static void main (String args[])
{
int i,j;
int yhlevel=10;
int yanghui[][];
Systemoutprintln("杨晖三角形:");
yanghui=new int[yhlevel][];
for(i=0;i<yanghuilength;i++)
yanghui[i]=new int[i+1];
yanghui[0][0]=1;
for (i=1; i<yanghuilength;i++)
{
yanghui[i][0]=1;
for(j=1;j<yanghui[i]length-1;j++)
yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];
yanghui[i][yanghui[i]length-1]=1;
}
for (i=0; i<yanghuilength;i++)
{
for(j=0;j<yanghui[i]length;j++)
Systemoutprint(yanghui[i][j]+" ");
Systemoutprintln();
}
}
}
输出结果是:
杨晖三角形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
3
import javaio;
public class MemoController{
FileOutputStream fos;
OutputStreamWriter osw;
BufferedWriter bw;
public MemoController(){
try{
fos=new FileOutputStream("memotxt",true);
osw=new OutputStreamWriter(fos);
bw=new BufferedWriter(osw);
}catch(FileNotFoundException e){};
}
public synchronized void append(String s){
try{
bwwrite(s,0,slength());
bwflush();
bwclose();
oswclose();
fosclose();
}catch(IOException e){}
}
public static void main(String args[]){
MemoController mmc=new MemoController();
mmcappend("I am xubin ");
}
}
4
import javaio;
class Phones
{
static FileOutputStream fos;
public static final int lineLength = 81;
public static void main(String args[]) throws IOException
{
byte[] phone = new byte[lineLength];
byte[] name = new byte[lineLength];
int I;
try
{
fos = new FileOutputStream("phonenumbers");
}
catch(FileNotFoundException e)
{ }
while (true)
{
Systemerrprintln("Enter a name (enter 'done' to quit)");
readLine(name);
if ("done"equalsIgnoreCase(new String(name,0,0,4)))
{
break;
}
Systemerrprintln("Enter the phone number");
readLine(phone);
for (int i=0;phone[i]!= 0;i++)
{
foswrite(phone[i]);
}
foswrite(',');
for (int i=0;name[i]!= 0;i++)
{
foswrite(name[i]);
}
foswrite('\n');
}
fosclose();
}
private static void readLine(byte line[]) throws IOException
{
int i=0,b=0;
while ((i<lineLength-1)&&((b=Systeminread())!='\n'))
{
line[i++] = (byte)b;
}
line[i]=(byte) 0;
}
}
一、 选择题答案
选择第1题
B
选择第2题
A
选择第3题
C
选择第4题
B
选择第5题
A
选择第6题
A
选择第7题
B
选择第8题
C
选择第9题
B
选择第10题
B
选择第11题
C
二、多项选择题答案
多项选择第1题
BD
多项选择第2题
AE
多项选择第3题
AC
多项选择第4题
AE
多项选择第5题
AE
多项选择第6题
DEF
多项选择第7题
AC
多项选择第8题
BC
多项选择第9题
AB
多项选择第10题
CD
多项选择第11题
CD
多项选择第12题
ACD
多项选择第13题
ABD
三、 填空题答案
填空第1题
x=10,a=3,b=4,c=5
填空第2题
javautil
填空第3题
(public )(static )(void)(main)(String args[])
填空第4题
1
填空第5题
26
JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用。有编程高手认为,JAVA也好C也好没什么分别,拿来就用。为什么他们能达到如此境界我想是因为编程语言之间有共通之处,领会了编程的精髓,自然能够做到一通百通。如何学习程序设计理所当然也有许多共通的地方。
1、培养兴趣
兴趣是能够让你坚持下去的动力。如果只是把写程序作为谋生的手段的话,你会活的很累,也太对不起自己了。
2、慎选程序设计语言
男怕入错行,女怕嫁错郎。初学者选择程序设计语言需要谨慎对待。软件开发不仅仅是掌握一门编程语言了事,它还需要其他很多方面的背景知识。软件开发也不仅仅局限于某几个领域,而是已经渗透到了各行各业几乎每一个角落。
3、要脚踏实地,快餐式的学习不可取
软件开发是一门工程学科,注重的就是实践,“君子动口不动手”对软件开发人员来讲根本就是错误的,他们提倡“动手至上”,但别害怕,他们大多温文尔雅,没有暴力倾向,虽然有时候蓬头垢面的一副“比尔盖茨”样。我们在看书的时候,不要等到你完全理解了才动手敲代码,而是应该在看书的同时敲代码,程序运行的各种情况可以让你更快更牢固的掌握知识点。
4、多参考程序代码
程序代码是软件开发最重要的成果之一,其中渗透了程序员的思想与灵魂。许多人被《仙剑奇侠传》中凄美的爱情故事感动,悲剧的结局更有一种缺憾美。为什么要以悲剧结尾据说是因为写《仙剑奇侠传》的程序员失恋而安排了这样的结局,他把自己的感觉融入到游戏中,却让众多的仙剑迷扼腕叹息。
参考代码例子,也可以研究一些开源的软件或框架。
5、加强英文阅读能力
对学习编程来说,不要求英语,但不能一点不会,。最起码像JAVAAPI文档(参考文献[44])这些东西还是要能看懂的,连猜带懵都可以;旁边再开启一个“金山词霸”。
6、万不得已才请教别人
要知道独立思考的能力对你很重要。要知道程序员的时间是很宝贵的。
7、使用合适的工具
工欲善其事必先利其器。软件开发包含各种各样的活动,需求收集分析、建立用例模型、建立分析设计模型、编程实现、调试程序、自动化测试、持续集成等等,没有工具帮忙可以说是寸步难行。工具可以提高开发效率,使软件的质量更高BUG更少。组合称手的武器。昌平镇计算机学校认为到飞花摘叶皆可伤人的境界就很高了,无招胜有招,手中无剑心中有剑这样的境界几乎不可企及。
以上就是关于《java程序设计》课程总结怎么写(java程序设计总结体会)全部的内容,包括:《java程序设计》课程总结怎么写(java程序设计总结体会)、Java程序设计(java程序设计答案)、2008年专升本考试就要来了,有关JAVA程序设计那位帮我~!!~等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)