1、Java课程知识点复习总结Java是一种解释性的语言垃圾收集机制:自动地不定期检查内存,自动删除垃圾。 Java Application(Java应用程序)Java程序可以分为两类 Java Applet (Java小程序)Java由类组成,类是Java的基本组成单位。Java Application,Java应用程序的主要特点是:有一个或多个类组成,其中必有一个定义了main()方法。main()方法是自动执行的类方法,是Java应用程序运行的起始点。定义了main()方法的类称之为主类。独立应用程序必须包含如下格式声明的主类和main()方法public class MainClasspu
2、blic static void main(String args) /write code here编译、执行命令用”javac”命令编译源文件用”java”命令解释执行类文件标识符只能由英文字母、下划线、美元符号($)和数字组成,且第一个字符不能是数字。标识符必须是一个连续的整体,中间不能有空格。关键字:事先定义的,有特别意义的标识符,又叫“保留字”abstract boolean break byte casecatch char class continue defaultdo double else extends finalfinally float for if implemen
3、tsimport instanceof int interface longnative new package private protectedpublic return short static superswitch synchronzized this throw throwstransient try void volatile while基本数据类型类型关键字范围/格式说明逻辑型boolean8位二进制逻辑值(true/false)文本类型char16位Unicode字符集单字符String字符串整型byteshortintlong8位二进制16位二进制32位二进制64位二进制字
4、节型整数-128+127短整型整数长整型浮点型floatdouble32位64位单精度浮点数双精度浮点数类的三大特性:1.封装性2.继承性3.多态性.声明类的对象类的对象就是以该类为模板创建出来的一个具体的实例,实例是类的一个特定实体,因为它区别于类的所有其他实例。声明一个类的对象使用语句格式:类名 实例名(如:Animal horse;)class myClass=new class();创建对象:Java语言使用new操作符为对象创建内存空间。即用”new”创建类的对象。例如,为Animal类创建一个对象horse,可以这样做:Animal horse1=new Animal(2);Ani
5、mal horse2=horse1构造方法:是类在创建对象时,new动作要执行的方法。构造方法带参数,类的创建也必须带参数。public class AApublic AA ( int m ) AA a=new AA(x); /x为给构造函数传递的参数封装的四个关键字:1.public表明该成员变量可被类外的程序访问;访问修饰符 2.protected表明该成员变量只能被雨当前类同处一个包中的类或当前类的子类访问; 3.private表明该该成员变量只能在该类的内部被访问。 4.static说明该成员变量时一个类变量,类变量为一个类所具有。This变量。含义:this表示的是当前类的当前对象本
6、身。准确地说,this 代表了当前对象的一个引用。对象的引用可以理解为对象的一个别名,通过引用可以顺利地访问到该对象,包括访问对象的成员变量、调用对象的方法等。但是对象的引用不能作为内存地址使用,它仅仅是作为对象的名字(或别名)来使用。对象:用this关键字可以调用到当前对象的方法或者用当前对象的成员变量。在构造函数重载时,可以使用this(parameterList);来调用相应参数的构造方法。使用this变量调用基本构造方法时,必须出现在当前构造方法的第一行。重载是Java提供的一种多态机制,它允许在同一个类中声明多个名称相同的方法,但这些方法必须有不同的形式参数列表(参数的个数、类型或顺
7、序不同),这就是方法的重载。函数重载是指同一个函数名可以对应着多个函数的实现。每种实现对应着一个函数体,这些函数的名字相同,但是函数的参数的类型不同。这就是函数重载的概念。函数重载在类和对象的应用尤其重要。构造方法构造方法的方法名与类相同;构造方法没有返回值(没有返回值和返回值是void是不一样的);完成赋值。修饰符修饰符分为:访问控制符和非访问控制符。修饰符修饰的对象分为两个层次:一个是类层次,一个是类的成员层次。在类这个层次的修饰会对成员层次的修饰有一定的影响。1 类的继承中,子类和父类的关系 共享性:即子类可以共享父类的公共属性和方法。 差异性:即子类和父类一定会存在某些差异,否则就应父
8、类、子类之间的对照关系 该是通一个类。层次性:即由Java规定的单继承性,每个类都处于继承关系树种的某一个层面。Java要求生命的每个类都有父类,当没有现实指定父类时,父类隐含为java.lang包中的Object类。一个父类可以同时拥有多个子类,这时这个父类实际上是所有子类的公共属性和方法的集合,而每个子类则是父类的特殊化,是在公共属性的基础上的功能扩展。Java不支持类的多重继承,只支持类的单继承,即每个子类只能有一个直接父类,类的层次为树状结构,Object类为树的根节结点。2 什么是类的多态,什么体现了类的多态性?多态性实质同名的不同方法在程序中共存。为同一个方法定义几个版本,运行时根
9、据不同的情况绑定不同的版本并执行。调用者只需要使用同一个方法名,系统就会根据不同的情况,调用相应的不同方法,从而实现不同的功能。多态性的实现有两种:(1)覆盖实现多态性:通过子类对父类方法的重写来实现。使用时注意,在子类重写父类方法是,要求与父类中的方法的原型(包括参数个数、类型、顺序)完全相同。程序在运行时将通过对象的不同类型,绑定到相应的方法。(2)重载实现多态性:通过定义类中的多个同名的不同方法来实现。程序运行时是根据参数列表的不同来区分不同的方法,从而绑定到相应的方法上。3 this和super的作用是什么?成员函数中定义了和成员变量中相同的变量时,引用成员变量要用this. 构造函数
10、中调用同一个类的其他构造函数时用this 子类中覆盖了父类成员变量或成员函数时,在子类中调用父类的变量或函数要用super 子类的构造函数里调用直接父类的构造函数用super,不能用于调用间接父类的构造函数。4 什么是构造方法,其功能是什么?定义一个新的类之后,就可以创建这个类的对象,创建一个类的对象的过程称为类的实例化,对象就是以类为模板创建的具体事例。同一个类的不同对象分别封装有相同的变量(但彼此之间的储存空间是独立的),并共享类的实例方法。其功能是对类的对象完成赋值5 class Person String name,department; int age; public Person(
11、String n)name=n; public Person(String n,int a)name=n;age=a; public Person(String n,String d,int a) (1) department=d; public void show() System.out.println(name+age); public class Teacher extends Person int salary; public void show() (2) System.out.println(salary); 下面哪个可以添加到构造方法中? A Person(n,a); B th
12、is(Person(n,a); C this(n,a); D this(name,age); 下面哪个可以添加到(2)中? A show(); B this.show(); C person.show(); D super.show();6 public class Person public int addValue(int a,int b) int s=a+b; return s; class Child extends Person 下面的哪些方法可以加入类Child A int addValue(int a,int b) B public void addValue() C publi
13、c void addValue(int a) D public void addValue(int a,int b)throws MyException 7 编写程序,定义一个类shape表示一个二维图形,方法area面积 和perimeter(周长)。定义一些二维图形,例如矩形,三角形,圆形,它们应是 shape的子类,class Shape int l,w;class Angle extends Shape Angle(int l,int w) this.l=l; this.w=w; void area() float s; s=l*w*0.5f; System.out.println(三
14、角形面积:+s); class Rect extends Shape Rect(int l,int w) this.l=l; this.w=w; void area() int s; s=l*w; System.out.println(矩形面积:+s); void len() int c; c=l+l+w+w; System.out.println(矩形周长:+c); class Circle extends Shape Circle(int l,int w) this.l=l; this.w=l; void area() double s; s=l*l*3.14; System.out.pr
15、intln(圆面积:+s); void len() double c; c=2.0*l*3.14; System.out.println(圆周长:+c); public class NO7 public static void main(String args) Angle lw=new Angle(3,4); lw.area(); Rect l=new Rect(3,4); l.area(); l.len(); Circle c=new Circle(3,4); c.area(); c.len(); 8 编写程序,定义一个Person类,含有姓名name和年龄age两个成员变量。二个构造方法
16、,分别带一个参数 和两个参数,完成赋值功能。一个输出show()方法,输出姓名和年龄。 定义一个Student,含有成绩g成员变量,一个输出方法show(),输出姓名,年龄,和成绩。public class No8 public static void main(String args ) Student student = new Student(a,12, 1); student.showInfo(); class Person protected String name; protected int age; Person(String name,int age) this.name =
17、 name; this.age = age; void showinfo() System.out.println(Name:+name+nage+age); class Student extends Person int grade; Student(String name,int age) super(name,age); this.grade=1; Student(String name,int age, int grade) super(name,age); this.grade = grade; void showInfo() System.out.printf(Name:+nam
18、e+ age+age+ grade+grade); 1 构造函数的作用是什么?是一种特殊的方法,主要用来在创建对象时初始化对象,即为对象成员变量赋值。2 定义一个类score,它含有私有成员变量english(英语分数),公有成员方法setScore()用来设置english的值,printScore()用来输出english的值。在主类中定义类score的两个对象stu1,stu2,其英语成绩分别为85.5和93.5,输出这两个分数3下面是一个计算器类的定义,请完成该类的实现class Counter int value; public Counter(int number) value=n
19、umber; public void increment() /给原值加1 value=value+1; public void decrement()/给原值减1 value=value-1; public int getValue() /返回计数值 return value; public void show() /显示计数值 System.out.println(value);public class Test1 public static void main(String args) Counter con=new Counter(4); con.increment(); con.sh
20、ow(); 4 定义一个类box,box的构造方法给盒子的边赋值(三个),用box类计算立方体的体积,并包含成员方法show()用来输出体积。 注意:利用构造方法重载class Box int w,h,l; float v; void show() System.out.println(体积:+v); void ver() v=w*h*l; Box(int l,int w,int h) this.l=l; this.w=w; this.h=h; Box(int l,int w) this.l=l; this.w=w; this.h=1; public class Test public static void main(String args) Box box=new Box(3,4,5); box.ver(); box.show();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1