Java面向对象程序设计复习资料
- 格式:doc
- 大小:27.00 KB
- 文档页数:1
java程序设计》复习资料Java程序设计是计算机科学中的一门重要课程,它涵盖了Java语言的基础知识和编程技巧。
在这门课程中,学生将学习如何使用Java语言进行程序设计,并掌握面向对象的编程思想。
本文将为大家提供一些Java程序设计的复习资料,帮助大家回顾和巩固所学知识。
一、Java语言基础Java语言是一种跨平台的编程语言,它具有简单、面向对象、健壮和安全等特点。
在学习Java程序设计之前,我们首先需要了解Java语言的基础知识。
1. 数据类型:Java语言中包含多种数据类型,包括基本数据类型和引用数据类型。
基本数据类型包括整型、浮点型、字符型和布尔型等,而引用数据类型则包括类、接口、数组等。
2. 变量和常量:在Java程序设计中,我们可以使用变量来存储和操作数据。
变量需要先声明后使用,并且可以根据需要进行赋值和修改。
而常量则是不可变的数据,一旦赋值后就不能再修改。
3. 运算符:Java语言支持多种运算符,包括算术运算符、关系运算符、逻辑运算符和位运算符等。
通过使用这些运算符,我们可以对数据进行各种操作和计算。
4. 控制流程:在程序设计中,我们经常需要根据不同的条件执行不同的代码块。
Java语言提供了多种控制流程语句,如if语句、for循环和switch语句等,可以帮助我们实现程序的流程控制。
二、面向对象编程面向对象编程是Java程序设计的核心概念之一。
在面向对象编程中,我们将程序看作是由多个对象组成的,每个对象都有自己的属性和方法。
下面是一些与面向对象编程相关的复习资料。
1. 类和对象:在Java语言中,类是对象的模板,用于描述对象的属性和方法。
通过创建对象,我们可以使用类中定义的属性和方法。
在定义类和创建对象时,需要注意访问修饰符、构造方法和成员变量的使用。
2. 继承和多态:继承是面向对象编程中的重要概念,它允许我们创建新的类,并从现有的类中继承属性和方法。
通过继承,我们可以实现代码的重用和扩展。
面向对象程序设计1. 代码public class Test {public int aMethod() {static int i = 0;i++;return i;}public static void main (String args[]) {Test test = new Test();test.aMethod();int j = test.aMethod();System.out.println(j);}}输出结果为编译失败,static用来修饰全局变量,不能修饰局部变量2. 下面的程序中,temp的最终值是1long temp=(int)3.9;temp%=2;3.在J2EE中属于Web层的组件有:Servlet4. 派生类中的成员不能直接访问基类中的private成员。
5.以public修饰的类如:public class Car{…}则Car可被其它程序包中的类使用6.paint( )方法使用 Graphics 类型的参数7. 下面数据插入语言(DIL)不属于SQL语句的子类8. 实现运行时的多态性要使用虚函数。
9. 创建对象时构造函数被调用10. 如下代码:class Base {Base() { System.out.print(“Base”); }}public class Alpha extends Base {public static void main( String[] args ) {new Alpha();-----调用父类无参的构造方法new Base();}}结果是BaseBase。
11.如果希望控件在界面上按表格行分列排列,应使用GridLayout布局管理器12. 声明抽象方法不可写出大括号叙述正确13. 线程交互中不提倡使用stop()方法14.当检索一个压缩文件时,首先要建立压缩文件输入流对象,该对象以 FileInputStream 对象为参数15.jsp指令中isELIgnored="boolean"的意思是决定是否支持EL表示。
实用文档Unit1:1.面向对象中类的概念:类是创建对象的模版,定义了对象的属性和方法;类中的属性赋予确定的取值得到该类的一个对象,对象是类的实例。
2.阐述类属性和操作的概念和作用?属性:已被命名的类的特性,描述对象的特征操作:是类的特征,用来定义如何激活该类对象的行为,类操作是对类属性的处理3.面向对象中对象的概念所要解决的现实世界的问题抽象为软件对象;需求描述问题域中拥有属性的实体或概念都可以看做对象。
4.阐述类与对象的联系类是一组对象的描述类是创建对象的模板,对象是类的实例类是一种数据类型,可以使用类名称声明对象变量5.阐述类与对象的区别抽象和具体,模板与实例6.类是否是数据类型?与你学过的其他类型进行比较,有何不同?类是一种数据类型,称之为对象类型,所以可以使用类名称声明对象。
类可以包含多个数据类型。
7.变量UML类图中类及其类中属性和方法如何表示?类名,类属性,类方法,各占一行8.UML类图中类与类之间的继承关系如何表示?其代表的含义是什么?实心线空心箭头;指一个类自动拥有另一个类的所有数据和操作。
9.UML类图中类与类之间的关联关系如何表示?其代表的含以是什么?实用文档单向为实心箭头,双向为实心直线;指一个类拥有另一个类的一到多个对象10.如果UML类图中类A与类B之间是1对多的关联关系,关联属性的数据类型是什么?类B对象的容器类型11.如果UML类图中类与类之间1对1的关联关系中,关联属性的数据类型是什么?被关联类的对象类型12.根据用户需求,建立面向对象设计方案—UML类图的方法和步骤是什么?分析需求,找出类,类之间的关系,类的属性,定义类的方法,绘制类图13.一般情况下,每个类都应该提供哪些常用的方法?增删改查,add, remove, set, get14.一般情况下,包含容器的类应该提供哪些常用的方法?获取容器,返回容器迭代器或迭代器接口Unit2:1.撰写java类的具体语法2.根据Java类,Java对象变量如何声明?Java对象如何创建与使用?类名变量名(参数); new方法3.什么是Java引用(变量),其内涵是什么?地址,其值指向对象所在内存中的位置。
1.标识符合法判断2.数组定义与引用3.整除、求余操作4.字符串基本操作5.表达式合法性判断、三元表达式用法及简单计算【A ?B :C】6.注释用法,单行注释、多行注释和文档注释各自语法及用途7.构造方法以及作用【带参数和不带参数的构造方法应用以及子类调用父类构造方法】8.类及其属性、方法修饰符【访问范围】9.修饰符混用:abstract不能与final并列修饰同一个类【正确】;abstract类中不可以有private的成员【正确】;abstract方法必须在abstract类中【错误】;static方法中能处理非static的属性【正确】10.抽象方法抽象类11.接口的继承特点,类的继承【子类访问父类变量和方法问题、变量隐藏】特点、多态、子类调用父类相同名字的变量和方法。
12.创建对象数量问题:【1】String s1="bc"; String s2="bc";【2】Strings1="bc"; String s2=new String("bc");13.方法返回类型及方法的定义14.final变量及特点15.静态变量和非静态变量16.abstract和final修饰符17.综合【一般类的编写:成员变量和成员方法,抽象类使用、接口定义及使用、水仙花数、素数、回文数等】18.讨论分析(1)如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。
(2)最终类不能派生子类,最终方法不能被覆盖。
(3)Java中的String类的对象既可以是字符串常量,也可以是字符串变量。
(4)Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。
(5)设String对象s=”Hello ”,运行语句System.out.println(s.concat(“World!”));后String对象s的内容为”Hello world!”,所以语句输出为Hello world!(6)System类不能实例化,即不能创建System类的对象。
1.对象(1)从概念层面讲,对象是某种拥有责任的抽象。
(2)从规格层面讲,对象是一系列可以被其他对象使用的公共接口。
(3)从语言实现层面讲,对象封装了代码和数据。
2.软件开发中的经典阶段:需求、分析、设计、规范、实现、测试、部署、维护。
3.设计7原则:开闭原则、里氏代换原则、依赖倒转原则、合成/聚合复用原则、迪M特原则、接口隔离原则、单一职责原则。
4.面向对象的方法学:UML(统一建模语言)、RUP(统一软件开发过程)、XP(极限编程)。
开发方法:Booch、Coad、OMT、UML、OOSE、Wirfs—Brock 5.OOA——运用面向对象方法进行需求分析。
OOD——运用面向对象方法进行系统设计。
OOP——运用面向对象方法进行程序设计。
6.OOA的基本任务:是运用面向对象的方法,对问题域和系统责任进行分析和理解,对其中的事物和它们之间的关系产生正确的认识,找出描述问题域及系统责任所需的类及对象,定义这些类和对象的属性和操作,以及它们之间所形成的结构、静态联系和动态联系。
最终目的:是产生一个符合用户需求,并能够直接反映问题域和系统责任的OOA模型及其详细说明。
优点:(1)加强了对问题域和系统责任的理解。
(2)改进与分析有关的各类人员之间的交流。
(3)对需求的变化具有较强的适应性。
(4)支持软件复用。
OOA的三大策略是:属性策略、方法策略、对象策略。
7.(1)封装:是指对象在其操作中隐藏属性。
它是一种信息隐蔽技术,用户只能看见对象封装界面上的信息,对象的内部实现对用户是隐蔽的。
封装的目的是使对象的使用者和生产者分开,使对象的定义和实现分开。
例如:要从同事那里借钱,在商店购买食物,就不会抢夺同事的钱包,大翻一通,看看里面是否有足够的钱。
而应该询问他们是否可以借你一些钱,他们就会自己翻钱包。
以表示圆的一个对象作为封装的例子。
圆的操作应能计算出半径、直径、周长和面积。
假定选择存储直径,要访问直径的程序员都会选择存储直径属性,而不是通过“获取直径”的操作来访问。
Java语言及面向对象技术复习资料一、单项选择题。
1、下列哪个是Java应用程序主类中正确的main方法?()A.public void main(String args[])B.static void main(String args[])C.public static void Main(String args[])D.public static void main(String args[])2、下列哪项是正确的float变量的声明?()A.float foo=-1; B.float foo=1.0;C.float foo=2.02f; D.float foo=0x0123;3、对于int a[]=new int[3];下列哪个叙述是错误的?()A.a.length的值是3。
B.a[1]的值是1。
C.a[0]的值是0。
D.a[a.length-1]的值等于a[2]的值。
4、下列哪个叙述是正确的?()A.5.0/2+10的结果是double型数据。
B.(int)5.8+1.0的结果是int型数据。
C.’苹’+’果’的结果是char型数据。
D.(short)10+’a’的结果是short型数据。
5、对于下列Hello类,哪个叙述是正确的?()A.Hello类有2个构造方法。
B.Hello类的int Hello()方法是错误的方法。
C.Hello类没有构造方法。
D.Hello无法通过编译,因为其中的hello方法的方法头是错误的(没有类型)。
class Hello {Hello (int m) {}int Hello() {Return 20;}hello() {}}6、下列哪个叙述是正确的?()A.成员变量的名字不可以和局部变量的名字相同。
B.方法的参数的名字可以和方法中声明的局部变量的名字相同。
C.成员变量没有默认值。
D.局部变量没有默认值。
7、下列哪个叙述是正确的?()A.子类继承父类的构造方法B.abstract类的子类必须是非abstract类C.子类继承的方法只能操作子类继承和隐藏的成员变量D.子类重写或新增的方法也能直接操作被子类隐藏的成员变量8、下列程序中注释的哪个代码(A,B,C,D)是错误的(无法通过编译)?()class A {static int m;static void f() {m=20; //A}}class B extends A {void f() //B{ m=222; //C}}class E {public static void main(String args[]) {A.f();}}9、将下列哪个代码(A,B,C,D)放入程序中标注的【代码】处将导致编译错误?()A.public float getNum() {return 4.0f;} B.public void getNum() {};C.public void getNum(double d) {}D.public double getNum(float d) {return 4.0d;}class A {public float getNum() {return 3.0f;}}public class B extends A {【代码】}10、下列哪个叙述是正确的?()A. 一个类最多可以实现两个接口B. 如果一个抽象类实现某个接口,那么它必须要重写接口中的全部方法C. 如果一个非抽象类实现某个接口,那么它可以只重写接口中的部分方法D. 允许接口中只有一个抽象方法二、程序填空题。
面向对象程序设计复习资料(一)单项选择题1.Java是一门()语言。
A. 机器B. 汇编C. 面向过程的高级D. 面向对象的高级2. 具有相同属性和服务的一组对象的共同模板称为()。
A. 程序B. 类C. 代码D. 概念3.在Java程序中包含主方法的类被称为主类,主方法的访问控制修饰符为()。
A. privateB. protectedC. publicD. static4.Java语言中的switch语句属于()语句。
A. 数据输入B. 数据输出C. 分支处理D. 循环控制5.在类的定义中,实现接口的子句所使用的关键字为()。
A. extendsB. implementsC. publicD. abstract6.在派生类的定义中,继承父类的子句所使用的关键字为()。
A. extendsB. implementsC. publicD. abstract7.下列能表示栈(stack)s1长度的是( )。
A.s1.length()B.s1.lengthC.s1.sizeD.s1.size()8.下面的异常()为文件没有找到异常。
A. NullPointerExceptionB. FileNotFoundExceptionC. ArrayIndexOutOfBoundsExceptionD. IOException9.下列不是InputStream 类的子类的是()。
A. FileInputStreamB. ObjectInputStreamC、 FileOutputStream D. DataInputStream10.进行文件输入输出操作时,最常用的系统包是()。
A. B. java.ioC. java.utilD. java.awt11.类是对具有共同属性和行为的对象的抽象描述,每个对象称为该类的一个()。
A. 产品B. 元素C. 成分D. 实例12.使用JDK运行Java程序时使用的命令是()。
java程序设计复习资料Java程序设计复习资料Java是一种广泛应用于软件开发领域的编程语言。
无论是初学者还是有一定经验的开发者,都需要不断复习和提升自己的Java编程能力。
本文将为大家提供一些Java程序设计的复习资料,帮助大家系统地回顾和巩固相关知识。
一、基础知识复习1. Java语言基础:复习Java的语法规则、关键字、数据类型、运算符等基础知识。
可以参考《Java核心技术卷一》等经典教材。
2. 面向对象编程:复习类、对象、继承、封装、多态等面向对象的基本概念和原则。
推荐阅读《Java编程思想》等相关书籍。
3. 异常处理:复习Java中的异常处理机制,包括异常类的继承关系、异常处理的语法和常见的异常类型。
可以参考《Java编程思想》等书籍中的相关章节。
4. 输入输出流:复习Java中的输入输出流操作,包括文件读写、网络通信等。
推荐学习《Java核心技术卷二》中的相关内容。
5. 集合框架:复习Java中的集合框架,包括List、Set、Map等常用集合类的使用方法和特点。
可以参考《Java编程思想》等书籍中的相关章节。
二、常用工具和框架复习1. 开发工具:复习Java开发中常用的集成开发环境(IDE),如Eclipse、IntelliJ IDEA等。
了解其基本使用方法和常见功能。
2. 版本控制工具:复习Git等版本控制工具的使用方法,包括代码提交、分支管理、合并等操作。
推荐学习《Pro Git》等相关资源。
3. 单元测试框架:复习JUnit等常用的单元测试框架,了解其基本使用方法和常见断言方法。
可以参考JUnit官方文档和相关教程。
4. Web开发框架:复习Spring、Spring MVC等常用的Java Web开发框架,了解其基本原理和使用方法。
推荐学习相关官方文档和教程。
5. 数据库操作:复习Java中与数据库交互的相关知识,包括JDBC的使用、SQL语句的编写等。
可以参考《Java核心技术卷一》中的相关章节。
面向对象程序设计(Java)复习提纲Unit1:1.面向对象中类的概念:类是创建对象的模版,定义了对象的属性和方法;类中的属性赋予确定的取值得到该类的一个对象,对象是类的实例。
2.阐述类属性和操作的概念和作用?属性:已被命名的类的特性,描述对象的特征操作:是类的特征,用来定义如何激活该类对象的行为,类操作是对类属性的处理3.面向对象中对象的概念所要解决的现实世界的问题抽象为软件对象;需求描述问题域中拥有属性的实体或概念都可以看做对象。
4.阐述类与对象的联系类是一组对象的描述类是创建对象的模板,对象是类的实例类是一种数据类型,可以使用类名称声明对象变量5.阐述类与对象的区别抽象和具体,模板与实例6.类是否是数据类型?与你学过的其他类型进行比较,有何不同?类是一种数据类型,称之为对象类型,所以可以使用类名称声明对象。
类可以包含多个数据类型。
7.变量UML类图中类及其类中属性和方法如何表示?类名,类属性,类方法,各占一行8.UML类图中类与类之间的继承关系如何表示?其代表的含义是什么?实心线空心箭头;指一个类自动拥有另一个类的所有数据和操作。
9.UML类图中类与类之间的关联关系如何表示?其代表的含以是什么?单向为实心箭头,双向为实心直线;指一个类拥有另一个类的一到多个对象10.如果UML类图中类A与类B之间是1对多的关联关系,关联属性的数据类型是什么?类B对象的容器类型11.如果UML类图中类与类之间1对1的关联关系中,关联属性的数据类型是什么?被关联类的对象类型12.根据用户需求,建立面向对象设计方案—UML类图的方法和步骤是什么?分析需求,找出类,类之间的关系,类的属性,定义类的方法,绘制类图13.一般情况下,每个类都应该提供哪些常用的方法?增删改查,add, remove, set, get14.一般情况下,包含容器的类应该提供哪些常用的方法?获取容器,返回容器迭代器或迭代器接口Unit2:1.撰写java类的具体语法2.根据Java类,Java对象变量如何声明?Java对象如何创建与使用?类名变量名(参数); new方法3.什么是Java引用(变量),其内涵是什么?地址,其值指向对象所在内存中的位置。
Java复习提纲1. 基础知识1)Java源代码文件后缀名为.java,编译后生成的字节码文件后缀名为.class2)Java中的变量名由三种类型的字符:字母、数字和下划线组成,且数字不能作为变量名首字母。
3)Java中的变量名一般首字母小写,类名首字母大写,包名首字母小写。
4)一个Java源文件中可以定义多个类,但只能有一个是public的。
5)JDK安装后,会有两个可执行程序文件java.exe、 javac.exe,其中java.exe是用来运行Java程序的,javac.exe是用来编译Java源代码的。
6)Java程序中,要结束程序退出,并且设置结果状态为-1,应该调用System.exit(-1);如果没有调用这个函数,那么程序最终退出时,退出值为0。
7)abstract类中可以有abstract和普通(非abstract)的方法;普通类中则只能有普通方法,不能有abstract方法。
8)int[] a = null; a[0]=77; 会引起NullPointerException。
9)String s = (String) new Object(); 会引起ClassCastException。
『父类不能强制转换成之类』10)Java中Object类是最顶层的类,是所有类的父类(也叫超类)。
11)使用instanceof运算符可以判断一个对象是否是某个类。
2. 名词解释1)JVM『Java虚拟机简称JVM,是运行所有Java程序的抽象计算机,包含Java解释器。
JVM实现了Java程序的跨平台运行。
』2)JRE和JDK『Java运行时环境简称JRE,Java开发工具的一个子集。
由想要重新分布JRE的终端用户和开发者使用。
JRE包括Java虚拟机、Java核心类及支持文件。
Java开发工具集简称JDK,用Java编写applet和应用程序的软件开发环境。
它比JRE多了开发工具和API。
java面向对象程序设计》考前复习纲要练习题二判断题:1、指出以下程序内容,各属于哪个面向对象范畴A. 封装 B 继承 C 多态class Student{private String id;private String name;private String professional; //专业} ( )2、在一个类中定义多个同名但不同参数的方法,叫做( ) class Math{public int add(int a, int b);public double add(double a, double b);public double add(double a, double b, double c);}A. 方法重载B. 方法重写C. 方法继承D. 构造方法3、一个Java源文件中定义有class Shape{ } class Circle{ } class Rect{ },则这个文件的文件名可以是( )A Shape.javaB Circle.javaC Rect.javaD 可以是任意的.java 文件名E 以上答案都不对4、一个Java源文件中定义有public class Shape{ } class Circle{ } class Rect{ },则这个文件的文件名可以是( )A Shape.javaB Circle.javaC Rect.javaD 可以是任意的.java 文件名E 以上答案都不对5、一个Java源文件中定义有public class Shape{ } public class Circle{ } publicclass Rect{ },则这个文件的文件名可以是( )A Shape.javaB Circle.javaC Rect.javaD 可以是任意的.java 文件名E 这个文件的定义是错误的6、如果Hello类定义在edu.learn包中,则package edu.learn; 这条语句应该放在( ) 的位置上(A)import java.util.*;(B)class Hello {}(D)7、如果类A在com.a包中,类B在com.b包中,则类A要使用类B的话,正确的方法是( ) 备注:本题多选A 类A中声明import com.b; class A { }B 类A中声明import com.b.*;class A { }C 类A中声明import com.b.B;class A { }D 类A中直接使用class A { com.b.B b = new com.b.B(); }直接使用8、如果有以下类定义class Employee {int a;public void funa(){ }}class Teacher extends Employee {int b;public void funa() { }public void funb() { }}则在使用Employee emp = new Teacher()上转对象的过程中,对emp的正确理解是( )A . emp可以访问a, b, funa(),funb()B. emp可以访问b, funb()C . emp可以访问a, funa()D . emp可以访问a, funa(),funb()9、接口相比抽象类而言,两者的区别在于接口中不能拥有()①变量②常量③普通方法④抽象方法A.①③B.①②③C.③D.②③10、抽象类中的抽象方法的正确定义是( )A. public void func(int a) { }B. public func(int a) { }C. public void func(int a) ;D. public abstract void func(int a) ;11、外部类和内部类的关系是( )A. 继承关系B. 并列关系C. 包含关系D. 没有什么特别的关系12、如果方法funa()执行时会产生AException异常,则执行以下程序后,结果为( ) try{①②}catch(AException e1){③}catch(BException e2){④}catch(Exception e3){⑤}finally{⑥}⑦A①③④⑤⑥⑦ B ①③⑥⑦C ①③⑦D①②③⑥⑦13、以下哪个集合类是实现List接口的( )A. HashSetB. TreeMapC. ArrayListD.HashMap14、以下哪个集合类不是实现Map接口的( )A. HashSetB. TreeMapC. HashTableD. HashMap15、以下哪个集合类不是实现是使用键值对来存储数据的( )A. HashTableB. TreeMapC. ArrayListD. HashMap16、以下哪个集合类能够插入相同的值( )A. hashSetB.hashMapC.ArrayListD.TreeMap17、以下哪个布局是网格布局( ) ,哪个布局是盒式布局( ) ,哪个布局是空布局( ) ,哪个布局是流式布局( ) ,哪个布局是边界布局( ) ,A B CD E填空题:1、类结构中可以包含______________和______________。
1.如何克服“构造函数只能调用1次,但是初始化工作可能在以后还会调用”的矛盾?答案:在构造函数中调用特定的初始化函数。
2. 英语词汇:参数 argument类型 type顺序 sequence构造函数 constructor重载 overload覆盖/重写 override封装 encapsulation多态 polymorphism继承 inheritance3. 重载叫做静态多态性4. 返回类型的不同能否作为重载的依据?不能。
如果你作为语言的设计者,为什么会这样规定?返回值是在函数调用之后才获得,函数调用时,并不关心返回值。
5. 区分符:Public:包内外均可引用Protected:包内,包外子类均可引用默认:包内引用Private: 类的内部引用6.静态变量之分配一次内存,一般作用是总体初始化一个变量,可再次赋值改变该值。
静态函数静态变量 neng普通函数普通变量 neng静态函数普通变量 bunenng普通函数静态变量 neng7.静态变量可以用对象.访问,但一般用类名.访问8.子类成员的覆盖不能比父类成员具有更严格的访问权限,仅限于成员函数。
即,成员变量可以有比父类同一定义变量访问权限更严格的量。
9.子类能够继承父类中的所有非私有成员,当成自己的成员。
一般情况下,将父类中被继承的成员定义成protected,方便包外子类使用。
10.继承只能实现继承树上各个类的功能的复用;组合却能实现理论上无限制的复用。
11.何时用继承,何时用组合?类之间明显有父子关系的情况下如果要复用,用继承;否则用组合。
12.继承和组合哪个用的多?组合13. 什么是动态多态?父类引用可以指向子类对象,在覆盖的情况下,父类引用调用的成员是子类成员14.将父类中某一个函数定义为抽象函数,规定:抽象函数必须被重写1:抽象函数也叫虚函数,没有函数体2:含有抽象函数的类叫做抽象类,必须用abstract 修饰3:抽象函数必须在子类中重写,除非该子类也是一个抽象类4:抽象类不能被实例化抽象类中普通成员可以负责完成所有子类都必须完成的逻辑15.除了抽象类,还有一种类:final类final类不能被继承final函数不能被覆盖final变量不能被改变16.抽象类中可否不写抽象函数?不行17.抽象类不能被new的方式实例化;但是子类实例化,抽象类还是实例化了18.接口中定义的变量只能是常量19.出抽象类和接口至少三个区别:1:抽象类中可以含有普通函数,接口不可以2:接口中的函数默认抽象的,抽象类不是3:可以实现多个接口4:抽象类通过extends继承,接口通过implements实现20.UML :unified modeling language 统一建模语言1.关联关系:单向关联双向关联自关联(实线箭头)2.聚合关系:整体与部分的关系3.组合关系:表示类之间整体和部分的关系,但是组合关系中部分和整体具有统一的生存期4.依赖关系:使用关系5.泛化关系:继承6.接口与实现:。
1.标识符合法判断
2.数组定义与引用
3.整除、求余操作
4.字符串基本操作
5.表达式合法性判断、三元表达式用法及简单计算【A ?B :C】
6.注释用法,单行注释、多行注释和文档注释各自语法及用途
7.构造方法以及作用【带参数和不带参数的构造方法应用以及子类调用父类
构造方法】
8.类及其属性、方法修饰符【访问范围】
9.修饰符混用:abstract不能与final并列修饰同一个类【正确】;abstract类中
不可以有private的成员【正确】;abstract方法必须在abstract类中【错误】;
static方法中能处理非static的属性【正确】
10.抽象方法抽象类
11.接口的继承特点,类的继承【子类访问父类变量和方法问题、变量隐藏】
特点、多态、子类调用父类相同名字的变量和方法。
12.创建对象数量问题:【1】String s1="bc"; String s2="bc";【2】String
s1="bc"; String s2=new String("bc");
13.方法返回类型及方法的定义
14.final变量及特点
15.静态变量和非静态变量
16.abstract和final修饰符
17.综合【一般类的编写:成员变量和成员方法,抽象类使用、接口定义及使
用、水仙花数、素数、回文数等】
18.讨论分析
(1)如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。
(2)最终类不能派生子类,最终方法不能被覆盖。
(3)Java中的String类的对象既可以是字符串常量,也可以是字符串变量。
(4)Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。
(5)设String对象s=”Hello ”,运行语句System.out.println(s.concat(“World!”));后String
对象s的内容为”Hello world!”,所以语句输出为Hello world!
(6)System类不能实例化,即不能创建System类的对象。
(7)子类的域和方法的数目一定大于等于父类的域和方法的数目。
(8)Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。
(9)Java中数组的元素只可以是简单数据类型的量。
(10)Java的字符类型采用的是ASCII编码。
(11)abstract不能与final并列修饰同一个类
(12)abstract类中不可以有private的成员
(13)abstract方法必须在abstract类中
(14)static方法中能处理非static的属性。