资源描述
______________________________________________________________________________________________________________
考试题型:①选择题(参考下面知识提纲)、②填空题(基本的概念、补全程序、输出结果)、③简述题(比如写出运行程序运行结果、解释某段代码的意思)、④编程题
关键知识点:
1、 标识符
1. 标识符定义
用来标识类名、变量名、方法名、类型名、数组名和文件名等的有效字符序列称为标识符。
2. 标识符组成
标识符是由字母、下划线(_)或美元符号($)开头,由字符、数字、下划线(_)或美元符号($)组成的字符串。标识符区分大小写,长度没有限制。除以上所列几项之外,标识符中不能含有其他符号,当然也不允许插入空格。其首字符必须是java字母。
一些合法的标识符如例1所示。
例1:identifier 、猫 、 User_name 、$change
标识符区分大小写,所以Username、username和userName是三个不同的标识符。
一些非法标识符如例2所示。
例2:2Sum 、 / /以数字打头、class 、 //关键字、 #myname、 //含有其他符号#
2、 基本数据类型的强弱关系
Byte<short<int<long<float<long
例如:弱的数据类型直接赋值给强的数据类型 long x=2 正确
强的转换成弱的有精度损失,需要强制类型转换,例如int i=(int)5.6 正确
例如 float f=5.6 //编译出错,因为没有强制类型转换。
3、java中常用关键词的意思
Enum 枚举、 implements 实现接口 、 const 定义常量 、 instantof 测试一个对象是否是指定类的实例对象、 package 创建包, 等等。
4、基本数据类型的相关概念
boolean表示布尔类型,只有两个值:true和false
int表示整数类型
float表示单精度浮点数 0.1f、.1f、-.05e3f
double表示双精度浮点数 5.6、100d、-5.e3
在java中用了取大原则,当看见小数的时候,比如5.6默认是double类型,所以float f=5.6 是错误的
5、熟悉进制的表示:比如十六进制以ox开头,八进制以o开头。
八进制表示:以0作为前缀,数码有0,1,2,3,4,5,6,7,逢8进位
如:8(十进制)-->010(八进制) 再如028非法,因为数码只有到7;
十六进制表示:以0x作为前缀,数码有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,逢16进位
如:16(十进制)-->0x10(十六进制)
6、java中,字符对应的整数值a=97 b=98……类推;A=65……
例如int x=”a”-“b” 其值为整数1;
7、了解常用的java类
例如:Object类
java.lang.Object类是所有java类的最高层次父类,该类提供了面向对象编程技术的基本机制。
重要方法列表:
hashCode()方法
toString()方法
equals()方法
finalize()方法
clone()方法
wait()方法
notify()/notifyAlly()方法
System类:System类是java.lang包中的,使用前不用导入。
System类的方法都是静态的,不用创建实例,直接使用System类名来调用。
例如:age=20;System.out.println(“我的年龄是:”+age);
String类
java.lang.String类对象表示不可修改的Unicode编码字符串.
方法说明:构造方法
字符串、连接、转换和截断:concat()、replace()、substring()、toLowerCase()、toUpperCase()、trim()
检索和查找功能:charAt()、startWith()、indexOf()、lastIndexOf()、length();
内容比较:equals()、equalslgnoreCase()、compareTo()
StringBuffer类
StringBuffer类对象保存可修改的Unicode字符序列
MouseListener接口实现鼠标事件的监听(教材291),方法如下:
Public void mouseClicked(MouseEvent e);
Public void mousePressed(MouseEvent e);
Public void mouseEndered(MouseEvent e);
Public void mouseExited(MouseEvent e);
Math类
java.lang.Math类提供常用数学功能和数学常量:
Exception类是程序处理的异常对应的类及其子类;
8、①类的类体包括了变量的定义和方法的定义;
②多态(掌握重载和重写);
重载-------Java的方法重载,就是在类中创建多个方法,它们具有相同的名字,但具有不同的参数个数或参数类型。调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是静态多态性。
重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准。(方法重载三中形式:1.参数类型不同2.参数列表不同3.参数顺序不同)
)
例如:一. int delete(String x1, String x2) 二. int set(int x,String s)
void delete (String x, String y) int set(String s,int x)
一. 不是重载,因为参数类型、个数、顺序完全一样
二. 是重载,不同类型的顺序不一样
重写-------若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类。
例如在子类A中实现print()方法的重写(请认真分析教材73页案例)
class Test {
void print() {
System.out.println("hello Test");
}
public static void main(String []args) {
A a=new A();
a.print();
} }
class A extends Test {
void print() {
System.out.println("hello A"); //在子类中实现父类方法print()的重写
} }
③this与super (更多参见教材75页)
super(参数):调用基类中的某一个构造函数(应该为构造函数中的第一条语句)
this(参数):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)
This 用法:(1)普通的直接引用;(2)方法中的某个形参名与当前对象的某个成员有相同的名字时用this区分,有this引用的是成员,没有this 的是形参。(3)引用构造函数。
Super:调用super()必须写在子类构造方法的第一行。"super.x"代表从父类继承下来的但被隐藏的x值。比如通过super调用父类的protected修饰的函数。
注意:(1)this和super不能同时出现在一个构造函数中;可以用this调用 一个构造方法,但不能调用两个。
(2)this()和super()都指的是对象,所以均不可以再static环境中使用。
1. 子类的构造函数如果要引用super的话,必须把super放在函数的首位.
class Base {
Base() {
System.out.println("Base");
}
}
public class Checket extends Base {
Checket() {
super();//调用父类的构造方法,一定要放在方法的首个语句
System.out.println("Checket");
}
子类与父类之间的转换(见教材68页):可以认为子类的对象也是父类的对象;反过来,由父类的构造方法创建的实例对象一般不是子类的实例对象。
9、表达式
表达式------由运算符和变量、常数或常量组成的式子称为表达式。例如2+3,a*b,++a,b--,a*=b,a+++(++b)等。表达式是组成程序的基本单位,也是程序运算时的基本单位。还有一些基本的运算符号应该会运用,比如:条件与&&,条件或||,逻辑与&和逻辑或|,其中&&与&以及||与|运算结果完全相同。
10、包的定义与导入包
比如:package com.beifang //定义一个包
Import java.Swing.* //导入需要用到的包
注意:在同一个文件中可以定义多个类,但是只能是一个public类,其他是默认类。对于一般类(非内部类)来说,private 和protected 这两个修饰语都是没有意义的
11、java的基本概念
例如:java源文件的后缀是.java,编译后的后缀是.class
编译java指令,javac,运行指令java
C#、Java是纯面向对象的程序设计语言。纯面向对象的程序设计语言编写的程序必须以类为基本单位,所有功能都封装在类中,真正实现数据(如数据成员)和业务(如各类方法)的封装。
12、数组
数组的定义包括静态与动态,例如:
静态定义:int[] numbers = {1, 2, 3, 4, 5};
动态定义:int size = 5;
int[] numbers = new int[size];
for (int i = 0; i < size; i++) {
numbers[i] = i + 1;
}
13、Equal与==的主要区别
² ==:主要比较对象的地址值
² 比如2个字符串对象
String s1 = new String("str");
String s2 = new String("str");
如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。
² Equals----它是java.lang.Object类中的一个方法。因为java中所有的类都默认继承于Object,所以所有的类都有这个方法。在Object类源码中是这样写的。
public boolean equals(Object obj) {
return (this == obj);
}
他同样使用==号进行内存地址的比较。
² equals方法具体的作用要看当前的那个类是如何实现重写父类中该方法的。如果没有重写该方法,那么他和==号等价。
14、字符串池
在该字符串池中,具有相同字符串序列的字符串值对应一个字符串实例对象。
举例:String s1 = "hehe";
String s2 = "hehe";
String s3 = new String("hehe");
if(s1 == s2){
System.out.println("s1 == s2");
}else{
System.out.println("s1 != s2");
}
if(s1 == s3){
System.out.println("s1 == s3");
}else{
System.out.println("s1 != s3");}
结果:
s1 == s2
s1 != s3
说明
String s1 = "hehe"; //查找字符串,发现没有,创建字符串"hehe",让s1 指向它
String s2 = "hehe"; //查找字符串,发现有,直接s2指向它
String s3 = new String("hehe"); //直接另外创建一个字符串"hehe"
这时候 s1 s2指向同一个地址,这个地址保存的内容是字符串"hehe" s3指向另外一个地址,内容是"hehe"
15、构造函数
构造函数的名字必须和类名完全相同,构造函数不能有返回值,就是void 也不要写,构造函数不可以被子类继承
构造函数可以重载但是不可以被子类覆盖。例子
class A{
A(){}
A(int n){} // 这两个都是构造函数}
构造函数在执行时,先执行父类的,举例:class A {
A() {
System.out.println("父类构造"); }}
class B extends A {
B(){
System.out.println("子类构造"); }}
public class E {
public static void main(String[] args) {
B b = new B(); //OK }}
运行结果:
父类构造
子类构造
16、try—catch—finally结构的执行顺序,(请看教材p178页中间一段)
17、嵌套for循环
举例(实验3练习1例子) outer: for(int i=0;i<5;i++){
for(int j=0;j<10;j++)
if(j>1)
System.out.println();
Continue outer;
}
System.out.print(“*”) }}
结果如下:
*
* *
* * *
* * * *
* * * * *
18、掌握基本的输入输出流,(掌握教材的例题如p212案例)例如
public class Test{
public static void main(String r[]) throws IOException{
InputStreamReader ir; BufferedReader in;
ir=new InputStreamReader(System.in);
in=___ ______________________
System.out.println("输入年份是:");
String s=in.readLine();
int year=Integer.parseInt(s);
______________________________________
System.out.println(""+year+"年是闰年");
else System.out.println(""+year+"年不是闰年");} }
19、图形界面的主要容器,如何得到内容窗格、布局的设置(几种常用的布局的创建)、容器对象的常用方法(如add()方法、设置布局方法、添加监听器的方法等)(认真分析理解教材代码,比如p245页案例、p286案例;)
了解一些常用的接口与适配器类:比如MouseAdapter等
20、编程题(最后一道大题):掌握平时实验的一些案例,能自己写出来,
1:比如参考试验8的练习1;
2:定义一个圆类,其属性为圆的半径;方法有设置圆的半径、获取圆的半径、计算圆的周长和计算圆的面积。并设计一个测试类,计算圆的周长和面积。 等等类似的题目
参考该代码
Welcome To
Download !!!
欢迎您的下载,资料仅供参考!
精品资料
展开阅读全文