重要知识点总结如下:
1,抽象,封装,继承,多态是面向对象程序设计中得四个特点.
2,面向对象的软件开发大体分为:面向对象的分析,面向对象的设计,面向对象的实现.
可概括为如下过程:分析用户需求,从问题中抽取对象模型;细化模型,设计类,包括类的属性和类间的
相互关系,同时观察是否有可以直接引用的已有类或部件;选定一种面向对象的编程语言,具体编码实现
上一阶段类的设计,并在开发过程中引入测试,完善整个解决方案.
3,面向对象程序设计方法的优点是:可重用性,可扩展性,可管理性.
4,类的定义:class前的修饰符分为访问控制符和非访问控制符两大类.访问控制符包括public和private.
非访问控制符包括abstract(抽象),final(最终).
5,final类是最终类,是不能有子类的类.abstract和final不能同时修饰一个类,因为抽象类本身没有具体对象,
需要派生出子类后在创建子类的对象.而最终类不可能有子类.
6,创建对象的格式为: 类名 对象名=new 构造方法(参数);注意前面是类名后面是构造方法.
注意构造方法没有返回类型,也不能写void,主要用于完成类对象的初始化工作,一般不能直接由编程
直接调用,而是用new运算符来调用.
7,如果class前面由public修饰符,则默认构造方法的前面也应该有public修饰符.
8,类中有static修饰的域或方法,可用类名或对象名访问,否则只能用对象名访问.
9,修饰域的访问控制符可以是:public,private,protected,private protected.非访问控制符可以是:
static,final,volatile(易失域)
10,类变量的最本质的特点是:他们是类的域,不属于任何一个类的具体对象实例.不是保存在某个对象实例的内存空间中,而是保存在类的内存区域的公共存储单元中.
11,局部变量是在方法体内声明的,只有当方法被调用时他们才存在,因而只能在本方法内使用,不存在访问控制符,也不能声明为静态变量(static),但可以声明为final变量.局部变量必须初始化.
12,修饰方法的访问控制符可以是:public,private,protected,private
protected,修饰方法的非访问控制符可以是:static,final,abstract,native(本地方法),synchronized(同步方法)。
13,用static修饰的变量或方法都为类成员,类成员可以用类名或实例名访问,实例成员只能用实例名来访问。
14,如果一个类中含有抽象方法,则此类必须为抽象类,如果抽象类的子类不为抽象类,则子类必须实现父类的所有抽象方法。抽象方法不能用静态方法和最终方法。抽想方法只有函数头的声明,而用分号来替代方法体,没有大括号。如abstract
void abstractmethod();
15,this变量用在一个方法的内部,指向当前对象,当前对象指的是调用当前正在执行的方法的那个对象。super变量是直接指向父类的构造方法,用来引用父类种的变量和方法。(由于他们指的是对象,所以不能通过它来引用类变量和类方法)
16,如果要引用一个包中的多个类,可以用星号来代替。使用星号只能表示本层次的所有类,而不包括子层次下的类。所以经常需要用两条语句来引入两个层次的类:import
java.awt.*;import java.awt.event.*;
17,访问修饰符:
--类中限定为public的成员可以被所有的类访问。
--类中先定位private的成员只能被这个类本身访问。同一个类的不同对象可以访问对方的private域变量或调用对方的域方法,这是因为访问保护控制在类的级别上,而不是对象的级别上。
--类中限定为protected的成员可以被这个类本身,它的子类(包括同一个包中和不同包中的子类),以及同一个包中的其他类访问。
--用private protected修饰的成员可以被该类本身访问,也可以被该类的所有子类访问。
--默认访问控制符规定只能被同一个包中的类访问和引用,而不能被其他包的类访问。即他的访问权限是friendly。
18,注意:
----abstract和private,static,final,native不能并列修饰同一个方法。
----abstract类中不能有private修饰的域和方法
----static方法不能处理非static的域。
19,重载方法的参数必须不同,或者是参数个数不同,或者是参数类型不同。重载的多个方法必须返回相同的数据类型。
20,在java中,一个类获取某一接口定义的功能并不是通过直接继承这个接口的属性和方法来实现的。因为接口中的属性都是常量,接口的方法都是没有方法体的抽象方法,没有具体定义操作。