[黑马程序员]3 JAVA基础--面向对象 类 继承 接口 多态

来源:互联网 发布:用java搭建app服务器 编辑:程序博客网 时间:2024/05/20 00:52

 ------- android培训、java培训、期待与您交流! ----------








类是构造对对象模板或蓝图。由类构造(construcet)对象的过程称之为创建类的实例(instance)




对象
面向对象程序设计和面向过程程序设计都是一种思想
面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。、
面向对象的三个特征:
封装
继承
多态
匿名对象
当只需要对类中的方法使用一次时,可以使用匿名对象。使用的方法应该是类中的静态方法。
匿名对对象可以作为实际参数进行传递




构造函数:用于给对象进行初始化,
特点:
1.该函数的名称和所在类的名称相同。
2.不需要定义返回值类型。
3.该函数没有具体的返回值。
所有对象创建时,都需要初始化才可以使用。


一个类在定义时,如果没有定义过构造函数,那么该类中会自动生成一个空参数的构造函数,
为了方便该类创建对象,完成初始化。如果在类中自定义了构造函数,那么默认的构造函数就没有了。


一个类中,可以有多个构造函数,因为它们的函数名称都相同,所以只能通过参数列表来区分。
所以,一个类中如果出现多个构造函数。它们的存在是以重载形式体现的。


构造函数和一般函数的区别:
1:两个函数定义格式不同。
2:构造函数是在对象创建时,就被调用,用于初始化,而且初始化动作只执行一次。
    一般函数,是对象创建后,需要调用才执行,可以被调用多次。
 


构造代码块:
是给所有的对象进行初始化,也就是说,所有的对象都会调用一个代码块。
只要对象一建立。就会调用这个代码块。


Person p = new Person();
上面这个语句使用Person类的空参数构造函数创建了一个Person类型的p变量。





类与对象的关系
类是java中描述事物的体现,而对象则是根据类的抽象描述加入自定的方法和数据构造出来的实例。








封装:
    有时称为数据隐藏。封装就是将数据和方法组合在一个对象中, 并对对象的使用者隐藏了数据的
实现方式。
封装的好处
将变化隔离, 便于使用,提高重用性, 安全性


private关键字
是一个权限修饰符
java中的权限修饰符还包括:
访问权限:public, protect, default, private
   √        
   √      
子类    √        √       ╳
其他包    √      




static关键字
是一个修饰符, 用于修饰成员(成员变量和成员函数), 当成员被static修饰后, 可以直接通过
类名.静态成员 的方式调用。


特点;
1.static修饰的成员可以被所有对象所共享。
2.随着类的加载而加载, 而且优先于对象存在
3.被静态修饰的成员可以被类名直接调用


静态成员的生命周期:随着类的消失而消失。
静态成员的存放位置:存放在方法区中。
好处:节省空间。
弊端:静态方法只能访问静态成员,不可以访问非静态成员
静态方法不能使用this super关键字。、


静态代码块、构造代码块、构造函数同时存在时的执行顺序:
静态代码块-->构造代码块-->构造函数;






继承:
   当多个类中存在相同属性和行为时,将这些方法抽取出来放到另一个类中,这个类我们称之为父类或者超类
   当多个类需要这些相同属性和行为时,通过extends 关键字继承父类,这些类就成为了父类的子类。
   Java中一个类只能继承一个父类, 也就是单继承。
   但是父类也可以继承其他类... 于是这叫多层继承
   一直继承下去什么时候是头呢? 
    所有类有一个共同父类,叫做object类。
继承的特点:
成员变量:当子父类中出现一样的属性时, 调用该属性,值是子类的属性值。
如果需要使用父类的属性,需要使用super关键字: super.属性名。

成员函数: 当子类中出现与父类中一模一样的方法,我们称之为:复写(重写)Override
构造函数: 子类中所有的构造函数中都有一条隐式的语句super();super()表示父类的构造函数。






多态:
一种事物在不同状态下的具体体现。
java中称之为:父类的引用指向了自己的子类对象。
前提:
因为定义为“父类引用指向子类对象”,所以引用和对象之间需要有一定关系。
即:继承或者实现(implements,类与类之间的另一种关系,父类中有方法被子类重写)

好处:
提高扩展性。
弊端:
多态时,父类应用不能直接调用子类中的特有方法。如果需要,则必须将父类的引用转化成子类类型。







    














0 0
原创粉丝点击