美文网首页
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