Java语言复习提纲_第1页
Java语言复习提纲_第2页
Java语言复习提纲_第3页
Java语言复习提纲_第4页
Java语言复习提纲_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2014年JAVA复习提纲Java语言的特点,类、接口、包构造方法、重载、重写、继承、异常关键字private、public、protected、final的作用Applet应用程序结构1. 什么是类和对象?类是相同对象的集合的描述,描述了一类对象的共同属性和操作。对象时类的实例,对应着现实世界的一个实体。2. 简述OOP的封装性、抽象性、继承性和多态性。封装性是把对象的属性和操作结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。抽象性是类作为一个抽象的数据类型,允许用户从底层实现细节中抽象出来,提供给用户的是在公共接口上的上层操作。继承性是在已有类的基础上派生出新的类,新的类能够吸收已有

2、类的属性和行为,并扩展新的能力。多态性是指在表示特定功能时,有多种不同的形态或实现方法。3简述Java中异常处理的机制。答:首先Java的异常是面向对象的。一个Java的Exception是一个描述异常情况的对象.当出现异常情况时,一个Exception对象就产生了,并放到异常的成员函数里。Java的异常处理是通过5个关键词来实现的:try,catch,throw,throws和finally。1.异常处理:在Java语言的错误处理结构由try,catch,finally三个块组成。其中try块存放将可能发生异常的Java语言,并管理相关的异常指针;catch块紧跟在try块后面,用来激发被捕

3、获的异常;finally块包含清除程序没有释放的资源,句柄等。不管try块中的代码如何退出,都将执行 finally块。2.抛出异常:Java语言可以不在方法中直接捕获,而用throw语句将异常抛给上层的调用者。Throw语句就是来明确地抛出一个异常;首先你必需得到一个Throwable的实例句柄,通过参数传到catch中,或者采用new操作符来创建一个。4. 在Java语言中,如何引发异常?对异常处理的两条途径是什么?JAVA语言中程序执行了非法或无效的动作或者通过执行throw语句程序均能引发异常。处理异常的两条途径:a) 捕获和处理异常:采用try-catch-finally方式显示声明

4、将异常交给合适的异常处理器进行处理。b)抛出异常:采用throws在其后写上已存在的异常类或者其超类的名称,显式声明不对其进行处理。5.简述Java访问修饰符的可访问性public 被同一类中的成员、同一包中其他类、不同包中的类、不同包的子类都能访问private 只能被被同一类中的成员访问protected 能被同一类中的成员、同一包中其他类、不同包中的类访问,不能被不同包的子类访问默认成员 能被同一类中的成员、同一包中其他类访问、不能被不同包中的类、不同包的子类访问6请简述重载和重写的区别?答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Ove

5、rriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。7类成员与实例成员在概念上有何区别?1) 类成员在类加载时完成初始化,并保持到该类被清除为止。此期间类及其实例共享着同样一份数据。实例成员在创建

6、实例时才会被初始化,只保持到该实例被清除,且每个实例独享自己的实例成员。2) 类成员可以通过类名或者引用对象进行调用,而实例成员只能通过引用对象进行调用。8. 线程存在几种状态?分别为那几种状态。线程总共有五种状态,非别为新建状态、可运行状态、运行状态、阻塞状态和死亡状态9.java是否支持多继承及java中采取什么机制来代替多重继承?Java不支持多继承,即一个类只能有一个父类。 单继承性使得java简单,易于管理程序 为了克服单继承的缺点,java使用了接口,一个类可以实现多个接口。9启动一个线程是用run()还是start()?启动一个线程是调用start()方法,使线程所代表的虚拟处理

7、机处于可运行状态,这意味着他能由JVM调度并执行。这并不意味着线程就会即时运行。run()方法能产生必须退出的标志来停止一个线程10. 构造方法的作用是什么?什么时候执行?定义时与普通方法的不同是什么?构造方法用于为类新建的对象分配内存空间和进行变量的初始化。构造方法在用new创建对象时执行。定义时必须与其所在类名相同,构造方法没有返回类型。程序阅读题:1. public class Test int x=8; public static void main(String args) Test t=new Test(); t.x+; change(t); System.out.println(

8、t.x=+t.x); static void change(Test m) m.x+=3; 程序的结果是:t.x=12。2. public class MyClass int a = 6, 9, 2, 4, 8 ;void out() for (int j = 0; j a.length; j+)System.out.print(aj + );public static void main(String args) MyClass my = new MyClass();my.out();程序的运行结果是: 6 9 2 4 8。3. public class Teststatic int x1=

9、5; int x2=8; public static void main(String args) Test obj1=new Test();Test obj2=new Test();obj1.x1=obj1.x1+2;obj1.x2=obj1.x2+4;obj2.x1=obj2.x1+1;obj2.x2=obj2.x2+6;x1=x1+3;System.out.print(obj1.x1=+obj1.x1);System.out.println( obj1.x2=+obj1.x2);System.out.print(obj2.x2=+obj2.x2);System.out.println(

10、Test.x1=+Test.x1); 程序运的结果是:obj1.x1=11 obj1.x2=12 obj2.x2=14 Test.x1=11。4. public class Test static int j=12; public static void main(String args)int i=5;Test p=new Test ();p.method(i);System.out.println(i+ and +j); public void method(int x)x=x*2;j=j*2; 程序的结果是:5 and 24。5. public class PersonString na

11、me;int age;public Person(String name, int age) = name;this.age = age;public static void main(String args) Person c = new Person(王强, 32);System.out.println( + “:” c.age “岁!);程序的运行结果是: 王强:32岁!。6. public class Teststatic void pass(String x)x=x+ Programming;System.out.println(x);public s

12、tatic void main(String args) String s1= Object Oriented;pass(s1);System.out.println(s1);程序的输出结果是:Object Oriented Programming Object Oriented程序设计题:1定义一个代表“形状”的抽象类Shape,其中包括求不同形状图形面积的抽象方法。继承该抽象类定义三角形、矩形、圆。分别创建一个三角形、矩形、圆存入一个数组中,访问数组元素将各类图形的面积输出。abstract class Shape /定义抽象类 abstract public double area();

13、 /抽象方法 class Triangle extends Shape /定义三角型 private double a, b, c; public Triangle(double a, double b, double c) this.a = a; this.b = b; this.c = c; public double area() double p = (a + b +c) / 2; return Math.sqrt(p * (p - a) * (p- b) * (p- c); class Rectangle extends Shape /定义矩形 private double widt

14、h, height; public Rectangle(double j, double k) width = j; height = k; public double area() return width * height; class Circle extends Shape /定义圆 private double r; public Circle(double r) this.r = r; public double area() return 3.14 * r * r; public class Test public static void main(String args)Sha

15、pe s = new Shape3; s0 = new Triangle(3, 4, 5);s1 = new Rectangle(10,20);s2 = new Circle(10);for (int k= 0; k j)int m=i;i=j;j=m;if (jk)int m=j;j=k;k=m;if (ik)int m=i;i=k;k=m;System.out.println(i+,+j+,+k);3. 输出打印100到200之间所有的素数。 public class PrimeNumberpublic static void main(String args) /int count=0;

16、for (int i = 100; i 200 ;i+=1 )boolean isPrime=true;for (int divisor = 2;divisor =i/2 ;divisor+ )if (i%divisor = 0)isPrime=false;break;if (isPrime)/count+;System.out.print(i+,);4 编程输出所有的“水仙花数”,所谓的“水仙花数”是指一个三位数,其各位数字的立方和等于其本身。例如:153是个“水仙花数”,因为153=13+53+33 。public class chb1 public static void main(St

17、ring args) int a,b,c,k; for(k=100;k1000;k+) a=k/100; b=k/10%10; c=k%10; if(k=a*a*a+b*b*b+c*c*c) System.out.println(k); 5. 编写程序,求出斐波那契序列的前20项。public class Fibpublic static void main(String args) int list= new int20;list0=1;list1=1;for (int i=2;ilist.length ;i+ )listi=listi-1+listi-2;for (int i=0;i=1 ;i- )int currentMax=list0;int currentMaxIndex=0;for (int j=1;j=i ;j+ )if (currentMaxx)money-=x;return money;else return -1;/取款无效,返回-1public static void main(String args) BankUser user1=n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论