面向对象
面向过程和面向对象的区别
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为
成员变量和局部变量
1)成员变量可以使java语言中任何一种数据类型(包含基本数据类型和引用类型
2) 在定义成员变量时可以对其初始化,不初始化也有默认值
3)成员变量的作用范围为整个类体(默认值如下)
对象的创建和使用
1.必须使用new 关键字创建对象
2.使用对象(引用).成员变量或来引用对象的成员变量
3.使用对象(引用).方法(参数列表)来调用对象的方法
4.同一类的每个对象有不同的成员变量存储空间
5.同一类的每个对象共享该类的方法
构造方法
1.构造方法与类同名没有返回值
2.使用new +构造方法 创建一个新的对象
命名规则
1.类名的首字母大写
2.变量名和方法名的首字母小写
3.运用驼峰标识
方法的重载
1.方法的重载是指一个类名可以定义有相同的名字,但参数不同的多个方法。调用时,会根据
不同的参数表选择对应的方法
this关键字
1.在类的方法定义中使用this关键字代表使用该方法的对象的引用
2.在必须指出当前使用方法的对象是谁时要用this
3.有时使用this可以处理方法中成员变量和参数重名的情况
4.this可以看作是一个变量,它的值是当前对象的引用
static关键字
1.在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化,对于该类的对象来说,static关键字只有一份
2.用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它所以在static方法中不可访问非static的成员
3.可以通过对象引用或类名(不需要实例化)访问静态成员
package和import
为便于管理大型软件系统中数目众多的类,解决类的命名冲突问题Java引入包机制,提供类的多重类命名空间
类的继承
1.java中使用extends关键字实现类的继承机制,其语法规则为
class name extends superClass{
}
2.通过继承,子类自动拥有了基类superclass的所有成员(成员变量和方法)
3.java只支持单继承,不允许多继承:
一个子类只能有一个基类,一个基类可以派生出多个子类
访问修饰符
java中包含四种访问修饰符:private,default,protected,public
方法的重写
1.在子类中可以根据需要对从基类中继承来的方法进行重写
2.重写方法必须和被重写方法具有相同方法名称,参数列表和返回类型
3.重写方法补鞥使用比被重写方法更严格的访问权限
super关键字
在java中使用super关键字来引用基类的成分
继承中的构造方法
1.子类的构造的过程中必须调用其基类的构造方法
2.子类可以在自己的构造方法中使用super调用基类的构造方法(但是必须放在第一行)
3.如果子类的构造方法中没有显示地调用基类构造方法,则系统默认调用基类无参数构造方法
4.如果子类构造方法中既没有显式调用基类构造方法,而基类中又没有无参构造方法,则编译出错。
Object类
object类是所有java类的根基类
如果在类的声明中未使用extends关键字指明其基类,则默认基类为object类
tostring方法
object类中定义有public string tostring()方法,其返回值是string类型描述当前对象的有关信息
equals方法
object类中定义有
1.public boolean equals(Object obj )方法
2.object的equals方法定义为x.equals(y) 当x和y是同一个对象的应用时返回true否则返回false
3.j2sdk提供的一些类,如string,date 等,重写了object的equals方法,调用这些类的equals方法