美文网首页
Java基础一-----面向对象

Java基础一-----面向对象

作者: wlw_花田半亩 | 来源:发表于2017-11-14 14:07 被阅读15次

    一. java的特性

         在计算机预期分为两种语言,一种是面向对象,一种是面向过程,java就是面向对象语言,面向对象语言的特别是语言更加简单化,而C语言是面向过程,他更注重的是过程.面向对象语言的共同的特性是封装,继承,多态,重载.

    1.重载:每一个面向对象的类都有构造方法,而方法名相同,参数不同,就是重载,

    构造方法格式特点

    方法名与类名相同(大小也要与类名一致)

    没有返回值类型,连void都没有

    没有具体的返回值return;

    2.继承:子类继承父类的特有属性和方法,比如猫,狗的父类是动物.

    3.封装:封装好的方法给其他类和对象使用.

    4.多态:多态存在的三个必要条件,继承,重写,父类引用指向子类对象

    多态的优点: 消除类型之间的耦合关系, 可替换性, 可扩充性, 接口性,灵活性, 简化性.

    二.创建对象内存分配

    * Student s = new Student();

    * 1,Student.class加载进内存

    * 2,声明一个Student类型引用s

    * 3,在堆内存创建对象,

    * 4,给对象中属性默认初始化值

    * 5,属性进行显示初始化

    * 6,构造方法进栈,对对象中的属性赋值,构造方法弹栈

    * 7,将对象的地址值赋值给s

    内存分配图

    三.面向对象关键字static

    static关键字的特点

    * a:随着类的加载而加载

    * b:优先于对象存在

    * c:被类的所有对象共享

    * d:可以通过类名调用

    static的注意事项

    * a:在静态方法中是没有this关键字的

    * 静态是随着类的加载而加载,this是随着对象的创建而存在。

    * 静态比对象先存在。

    * b:静态方法只能访问静态的成员变量和静态的成员方法

    * 静态方法:

    * 成员变量:只能访问静态变量

    * 成员方法:只能访问静态成员方法

    * 非静态方法:

    * 成员变量:可以是静态的,也可以是非静态的

    * 成员方法:可是是静态的成员方法,也可以是非静态的成员方法。

    * 简单记:

    * 静态只能访问静态。

    四.面向对象继承的好处和弊端

    * A:继承的好处

    * a:提高了代码的复用性

    * b:提高了代码的维护性

    * c:让类与类之间产生了关系,是多态的前提

    * B:继承的弊端

    * 类的耦合性增强了。

    * 开发的原则:高内聚,低耦合。

    * 耦合:类与类的关系

    * 内聚:就是自己完成某件事情的能力

    * this:代表当前对象的引用,谁来调用我,我就代表谁

    * super:代表当前对象父类的引用

    * B:this和super的使用区别

    * a:调用成员变量

    * this.成员变量 调用本类的成员变量,也可以调用父类的成员变量

    * super.成员变量 调用父类的成员变量

    * b:调用构造方法

    * this(...) 调用本类的构造方法

    * super(...) 调用父类的构造方法

    * c:调用成员方法

    * this.成员方法 调用本类的成员方法,也可以调用父类的方法

    * super.成员方法 调用父类的成员方法

    相关文章

      网友评论

          本文标题:Java基础一-----面向对象

          本文链接:https://www.haomeiwen.com/subject/nkjbmxtx.html