《Java语言程序设计一》复习资料.docx
- 文档编号:3435166
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:11
- 大小:21.15KB
《Java语言程序设计一》复习资料.docx
《《Java语言程序设计一》复习资料.docx》由会员分享,可在线阅读,更多相关《《Java语言程序设计一》复习资料.docx(11页珍藏版)》请在冰豆网上搜索。
《Java语言程序设计一》复习资料
《Java语言程序设计
(一)》
复习资料
Java语言是目前使用最为广泛的网络编程语言之一;具有面向对象;与平台无关性;多线程性;动态性等特点。
Java运算符按功能分6种,具体如下:
算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、条件运算符。
结构化程序设计有顺序、分支、循环三种基本流程;java中的分支语句包括if语句、switch语句;循环语句包括while语句、do-while语句、for语句;其他如对象、变量定义语句、赋值语句、方法调用语句等都是顺序语句。
Java中逻辑型用boolean表示;字符型用char表示;整型共有4种分别是byte(字节型)、short(短整型)、long(长整型)、int(普通整型);浮点型共两种float和double。
创建线程可以通过继承线程类Thread创建线程类;建立一个实现Runnable接口的类来运行线程。
用abstract修饰的类不能创建对象,必须产生子类,有子类创建对象;用abstract修饰的方法只允许声明,而不允许实现;如果一个类是一个abstract类的子类,它必须实现父类的abstract方法。
在类的方法的定义之前,加上修饰字public和加上修饰字private是不同的。
Public修饰的方法为公用方法,任何类的方法都可以访问他;Private修饰的方法,本类内部可以访问。
在面向对象系统中,类是对一组相同对象的描述,类概括了同类对象的共有性质:
数据和方法。
对象是类的一个实例。
一个java应用程序必须且只有一个类含有main方法,这个类称为应用程序的主类,其main方法必须被说明为public static void;一个Java Applet小应用程序不再需要main方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。
"
编程语言的四个发展阶段
(1)面向机器语言
(2)面向过程语言(3)结构化程序设计阶段(4)面向对象编程。
代码TextArea text=new TextArea();JScrollPane jsp=new JScrollPane(text);().add(jsp); 可以将文本区text放置于滚动面板jsp,并将滚动面板jsp添加到JFrame窗口myFrame的Java语句。
多任务是针对操作系统而言的,表示操作系统可以同时执行多个程序;多线程则是针对一个程序而言的,表示一个程序内部可以同时执行多个线程。
在循环中使用break语句,将使循环终止,流程跳转到break语句所在的循环外面的第一个语句继续执行;在循环中使用continue语句,将提前结束本次循环,流程跳转到continue语句所在循环的第一个语句继续执行。
用final修饰的类不能被继承,即不能有子类;用final修饰的方法不能被重写。
Java小应用程序播放音频文件需要用到的类的类名是AudioClip,创建对象的方法是getAudioCilp() 。
package语句作为java源程序的第一条语句,指明该源文件定义的类所在的包,而import语句作用是为了能使用java提供的类,可以使用import语句来引入所需要的类。
在JAVA中实现与后台数据库的连接可以采用二种方法:
(1)或者编写一个驱动程序接受JDBC调用,执行SQL对数据库的调用。
(2)或者使用已存在的ODBC驱动程序,用JDBC-ODBC桥将JDBC与ODBC连接起来。
用向量类的对象存储数据与用数组表示数据是有区别的:
(1)数组元素可以是任何类型的数据,向量中的元素不能是基本数据类型的数据;
(2)数组一旦用new运算符创建后,其大小不可以改变,向量对象的大小可根据元素的增加自动增加。
构造方法的名字和类名相同,且没有任何返回值,创建一个对象是执行构造方法,由系统自动调用。
创建一个File对象构造方法有:
(1)包含路径名的字符串;
(2)含有路径名的字符串和含文件名的字符串;
(3)一个代表路径的文件和一个含有文件名的字符串。
设置组件的字体和颜色的方法:
(1)设置字体:
用Font类创建一个字体对象,该对象表示一种字体,通过组件对象名调用方法SetFont(Font f),即可设置组件的字体
(2)设置颜色:
用Color类创建两个颜色对象,表示两种颜色,一种颜色表示组件的前景色,另一种表示背景色,通过组件对象名调用方法SetBackground(Color C)可设置组件的背景色,调用方法SetForeground(Color C)可设置组件的前景色。
MouseMotionListener接口事件的处理。
鼠标移动事件有两种:
拖动鼠标和移动鼠标;产生的事件类型MouseEvent;获得监视器的方法是addMouseMotionListener( );事件接口中的方法为mouseDragged(MouseEvent e) ;和mouseMoved(MouseEvent e) 。
继承是一种由已有的类创建新类的机制;利用继承可以创建一个共有属性的一般类,根据该一般类再创建具有特殊属性的新类;新类继承一般类的状态和行为,并根据需要增加它自己的新的状态和行为;由继承而得到的类称为子类。
菜单上的事件的处理方法:
(1)单击菜单项可产生ActionEvent事件处理该事件的接口是Actionlistener;
(2)接口中的方法是actionPerformed(ActionEvent e) ;(3)事件源获得监视器的方法是addActionListener( ) ;(4)ActionEvent获得事件源的方法是getSource( ) 。
选择(Choice)控件上的事件处理方法:
(1)选择控件的选择情况发生变化会产生HemEvent事件;
(2)处理该事件的接口是HemListener;(3)接口中的方法是ItemStateChanged(HemEvent e) ;(4)事件源获得监视器的方法是addHemListener( ) ;(5)处理该事件时,如果想获得事件源可调用方法getHemSelectable( ) 。
滚动列表(List)上的事件的处理方法。
滚动列表可产生两种事件:
双击和单击某项,当双击某项时,产生ActionEvent事件,获得事件监视器的方法是addActionListener( ),处理事件的接口是ActionListener;接口中的方法是ActionPerformed(ActionEvent e),获得该事件的事件源的方法是getSource( );当单击某项时,产生HemEvent事件,获得事件监视器的方法是addHemListener( ),处理事件的接口是HemListener;接口中的方法是itemStateChanged(HemEvent e),获得该事件的事件源的方法是getHemSelectable。
可以用套接字建立两个程序间的通信:
(1)用Socket类建立客户到服务器的套接字的对象:
Socket(String host,int port)
(2)用ServerSocket建立接受客户套接字的服务器套接字对象:
ServerSocket(int port)客户端与服务器端的端口号相同
(3)客户端服务器对象调用方法accept()接受客户的套接字,创建客户端套接字对象,服务器端套接字对象和调用方法accept()时都可能产生IOException,所以需对例外进行处理。
如果类的成员变量与方法中的局部变量名相同,那么可以在方法中通过this关键字调用成员变量;在构造方法中使用this调用构造方法的语句必须是该方法的第一条执行语句,且只能出现一次;部变量名相同,那么可以在方法中通过this关键字调用成员变量只能在构造方法中使用this调用其他的构造方法。
borderlayout布局管理器将容器的矩形区域分为五个区,分别是上北下南左西右东和中部。
这五个区域每个区域最多只能放置一个组件,如果添加了多个,只有最后一个能够正确显示。
这五个区域可以选择性地使用其中几个,或者全部都使用。
不使用的区域将合并为一个,下一个组件添加进来,将占据这个合并区域。
线程的一个生命周期包括以下状态:
(1)新建(new)
(2)可运行状态(Runnable)、(3)死亡(Dead)(4)阻塞(Blocked)
Java数组的内存分配。
当我们需要多个类型相同的变量的时候,就考虑定义一个数组。
在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静态的,所以想要使用就必须先初始化(为数组对象的元素分配空间)。
Java语言里,数组的初始化有两种方式:
静态初始化:
初始化时由程序员显式指定每个数组元素的初始值,由系统决定数组长度。
动态初始化:
初始化时程序员只指定数组长度,由系统为数组元素分配初始值。
不管采用哪种方式初始化Java数组,一旦初始化完成,该数组的长度就不可改变,可以通过数组的length属性取得数组的长度。
try和catch的作用是测试系统稳定性,测试系统运行时是否会崩溃。
语法格式如下:
try
{
有可能出现错误的代码写在这里
}
catch
{
出错后的处理
}
如果try中的代码没有出错,则程序正常运行try中的内容后,不会执行catch中的内容。
如果try中的代码一旦出错,程序立即跳入catch中去执行代码,那么try中出错代码后的所有代码就不再执行了。
程序题练习
1.表示year年是闰年的Java表达式。
闰年的条件是:
每4年一个闰年,但每100年少一个闰年,每400年又增加一个闰年。
(year%4= =0) && (year%4!
=0)||(year%400= =0)
2.程序如下:
classStaticDemo
{
staticintx;
inty;
publicstaticintgetX()
{ returnx; }
publicstaticvoidsetX(intnewX)
{ x=newX; }
publicintgetY()
{returny;}
publicvoidsetY(intnewY)
{y=newY;}
}
publicclassMainDemo{
publicstaticvoidmain(String[]args)
{
System.out.println("静态变量x="+StaticDemo.getX());
StaticDemoa=newStaticDemo();
StaticDemob=newStaticDemo();
a.setX
(1);
a.setY
(2);
b.setX(3);
b.setY(4);
System.out.println("静态变量a.x="+a.getX());
System.out.println("实例变量a.y="+a.getY());
System.out.println("静态变量a.x="+b.getX());
System.out.println("实例变量a.y="+b.getY());
}
}
程序运行结果为:
静态变量x=0
静态变量a.x=3
实例变量a.y=2
静态变量a.x=3
实例变量a.y=4
3.请写一个if语句,判断整数n是否同时满足“被3除余2,被7除余1”的条件,满足时输出“OK”,否则输出“NO”。
程序为:
if(n%3==2&&n%7==1)
System.out.print(“OK”);
else
System.out.print(“NO”);
4.程序如下
publicclassContinueTest {
publicstaticvoidmain(Stringargs[])
{
char c='i';
for(int n=6;n<11;n++) {
if(n==8) continue;
System.out.print("\t"+(c++));
}
}
}
(1)程序的输出结果是:
i j k l
(2)若将if中的continue语句替换为break语句,输出结果是:
i j
5.分析以下程序的运行结果
publicclassFather{
Stringname,address,tel;
intage;
publicFather(Stringname,intage){
this.name=name;this.age=age;
}
voidout(){
System.out.print("姓名:
"+name);
System.out.print(" 年龄:
"+age);
}
voidoutOther(){
System.out.print(" 家庭住址:
"+address);
System.out.print(" 电话:
"+tel);
}
}
classSonextendsFather{
Stringschool;
publicSon(Stringname,intage){
super(name,age);
}
voidout(){
super.out();
super.outOther();
System.out.println(" 学校:
"+school);
}
publicstaticvoidmain(Stringargs[]){
Sonson=newSon("Tom",15);
son.address="金水区";
son.school="九中";
son.tel="66123456";
son.out();
}
}
运行结果为:
姓名:
Tom 年龄:
15 家庭住址:
金水区电话:
66123456 学校:
九中
6.分析以下程序。
Packagetest;
PublicclassFatherClass
{
PublicFatherClass()
{
System.out.print(“FatherClassCreate”);
}
}
子类:
Packagetest;
Importtest.FatherClass;
PublicclassChildClassextendsFatherClass
{
PublicChildClass()
{
System.out.println(“ChildClassCreate”);
}
Publicstaticvoidmain(String[]args)
{
FatherClassfc=newFatherClass();
ChildClasscc=newChildClass();
}
}
程序执行结果为:
FatherClassCreate
FatherClassCreate
ChildClassCreate
7.分析下列程序的功能。
importjava.io.File;
publicclassFileExercise{
publicstaticvoidmain(String[]args){
FilefileObject=newFile("Sally.txt");
if(fileObject.exists()){
System.out.println("ThereisafilenamedSally.txt");
}else{
System.out.println("ThereisnofilenamedSally.txt");
}
}
}
该程序的功能是测试程序所在的目录是否包含一个名为Sally.txt的文件。
如果存在则输出ThereisafilenamedSally.txt;如果不存在则输出Thereis no filenamedSally.txt。
8.分析以下需求,并用代码实现:
(1)定义如下方法publicstaticStringgetPropertyGetMethodName(Stringproperty);
(2)该方法的参数为String类型,表示用户给定的成员变量的名字,返回值类型为String类型,返回值为成员变量对应的get方法的名字。
(3)如:
用户调用此方法时给定的参数为"name",该方法的返回值为"getName"。
代码如下:
publicstaticvoidmain(String[]args){
System.out.println(getPropertyGetMethodName("lisa"));
}
publicstaticStringgetPropertyGetMethodName(Stringproperty){
return"get".concat(property);
}
9.分析以下需求,并用代码实现:
(1)定义数字字符串数组{"010","3223","666","7890987","123123"}
(2)判断该数字字符串数组中的数字字符串是否是对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出
(3)如:
010是对称的,3223是对称的,123123不是对称的
(4)最终打印该数组中对称字符串的个数
代码如下:
publicstaticvoidmain(String[]args){
judge02();
}
publicstaticvoidjudge02(){
String[]strings={“010”,“3223”,“666”,“7890987”,“123123”};
intcount=0;//count是一个计数器,把不对称的统计出来,后面就可以确定对称的
for(inti=0;i //将字符串数组中的每个字符串拿出来,在将其变成一个个字符数组,然后每个字符来比较 char[]cs=strings[i].toCharArray(); for(intj=0,k=cs.length-1;j if(cs[j]-cs[k]! =0){ System.out.println(strings[i]+“不是对称的”); count++; break;} } } intnum=strings.length-count; System.out.println(“对称字符串的个数是”+num);} } 10.编写程序,实现如下功能: 键盘录入一个长字符串str,再录入一个短字符串subStr,要求长字符串str中,包含多个短字符串subStr,打印出短字符串subStr在长字符串str中每次出现的索引。 程序如下: importjava.util.Scanner; publicclassLastTest{ publicstaticvoidmain(String[]args){ Scannerscanner=newScanner(System.in); System.out.println(“输入一个长字符串”); StringlString=scanner.next(); System.out.println(“输入一个短字符串”); Stringstring=scanner.next(); times(lString,string);} publicstaticvoidtimes(StringlString,Stringstring){ intindex=0; while(index index=lString.indexOf(string,index); System.out.println(index); index++;}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java语言程序设计一 Java 语言程序设计 复习资料