java基础--OOP

来源:互联网 发布:怎样在手机淘宝上评价 编辑:程序博客网 时间:2024/06/05 02:47

面向对象的特征

面向对象的核心是:封装,继承,多态。

封装:将数据封装到类的内部,将算法封装到算法中。封装原则,将不需要对外提供的内容都隐藏起来,提供公共方法对其访问。

继承:继承是一种所属关系,是从已有类得到继承信息创建新类的过程。继承的好处:子类共享父类的属性和方法的定义,子类复用了父类的属性和方法,节省了代码。

多态:继承体现了多态:父类型变量可以引用各种各样的子类型实例,也可接收子类对象;个体多态:父类型的子类型实例是多种多样的;行为多态:父类型定义的方法被子类重写为多种多样的,重载也是多态的方法。

抽象:抽象就是将拥有的共同方法和属性的对象抽取出来,提取后,重新设计一个更加通用和更加大众化的类。

接口:是继承之外的体系,用于功能扩展,想扩展就实现,不想扩展就不用实现,接口中只能声明抽象的方法和常量且声明的格式都是固定的。


JVM 内存结构堆,栈,方法区分别存储的内容

堆:用于存储使用 new关键字创建的对象

栈:用于存放程序运行过程中所有的局部变量。

方法区:用于存放类的信息,java运行时首先会通过类加载器载入类文件的字节码信息,经过解析后将其装入方法区。


类与类之间的关系:

关联

继承

依赖


方法及其调用

方法是用于当前对象数据进行算法计算,实现业务功能。方法是对象的功能,对象的动作,对象的行为。

方法的调用只有两种方式:

1 对象引用调用 

        2 类名调用(静态类)


构造器

用于创建对象并初始化对象属性的方法,构造器在类中定义。

构造器没有返回值;

构造器可以重载;

构造器是不能继承的;

构造器的参数一般是初始化对象的前提条件;

用new调用,且对象一建立,构造器就运行且仅运行一次;

如果类没有声明构造器,java编译器会自动插入默认的无参构造器;

如果声明了构造器(不管是有参还是无参),java编译器将不再提供默认的构造器。

子类型继承父类,子类型构造器默认调用父类型的无参构造器;

子类型一定要调用父类型的构造器,如果父类型没有无参构造器,则必须使用super(参数)调用父类构造器;


重载与重写

重载:方法名一样,参数列表不同的方法构成重载的方法(多态的一种形式)。

1 与返回值类型无关;

2 重载遵循编译期绑定,即在编译时根据参数变量的类型判断应调用哪个方法。

重写:通过类的继承关系,由于父类中的方法不能满足新的要求,因此需要在子类中修改父类中继承过来的方法。

1 方法名,参数列表,返回值类型跟父类的一模一样,但方法的实现不同;

2 静态方法只能重写静态方法;

3 子类若继承了抽象类或实现了接口,则必须重写全部的抽象方法。若没有全部实现抽象方法,子类仍然是抽象类;


static

只能在类内部使用,可以修饰属性,方法,内部类;在类加载期间初始化,存在方法区中。

1 静态成员随着类的加载而加载,加载于方法区,优先于对象存在;

2 静态修饰的成员,属于类成员,全体实例共享;

3 使用类名访问静态变量;类名直接调用静态方法;

4 静态方法只能访问静态成员;非静态方法既可访问静态的,也可访问非静态的;


静态代码块和代码块

静态代码块随着类的加载而执行,且只执行一次,优先于主函数,用于给类初始化;

代码块给所有对象进行统一的初始化,且优于构造器执行,构造器是给对应的对象进行初始化的。


对象的创建过程及顺序

Foo foo = new Foo();

1 首先将Foo.class文件加载到内存中;

2 如果有static代码块先执行静态代码块,给Foo类初始化;

3 在堆内存中开辟空间,分配内存地址;

4 在堆内存中建立对象的属性,并进行默认的初始化;

5 对属性进行显示初始化;

6 对对象进行代码块初始化;

7 对对象进行对应的构造器初始化;

8 将内存地址赋给内存中的foo变量;


内部类

在类内部定义的类为成员内部类,在方法里定义的类为局部内部类,被static修饰的为静态内部类。

内部类的实例化: new  Outer().Inner()

1 当内部类中定义了静态成员,内部类必须是静态的;

2 当外部类中的静态方法访问内部类,内部类必须是静态的;

因为静态方法中没有this,也就是说没有外部类对象


匿名类

定义匿名内部类的前提是内部类必须是继承一个类或者实现接口;

在匿名内部类中只能访问final局部变量









阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 中国为什么禁止卖圣经 尤果网无圣光 尤果网圣光 萝莉无圣光网红柚木5 秀人网无圣光 萝莉无圣光网红柚木 网红萝莉无圣光 尢果网杨晨晨无光圣 网红袖木圣光 网红萝莉无圣图片欣赏 圣空甘露网 网红柚木无圣光 网红无圣光 网红柚木圣光 圣才学习网首页 网王之完美圣书 圣网 圣才网 圣美 圣耀升级 圣耀 圣耀升级苍穹 圣耀救赎光剑 圣耀救赎太刀 斗破之无霹雳诸天 圣耀天旸 五圣 圣者降临 圣者 圣者九鱼 圣者之塔隐藏冈布奥 武道圣者 不思议迷宫圣者之塔 圣者晨雷作品 不思议迷宫圣者之塔隐藏 圣者之塔用什么阵容打 圣者之塔速刷 秃头圣者作品 圣者遗物 圣者之塔 圣者图希克在哪