JavaSE基础

一.面向对象

      1.面向对象都有哪些特性以及对这些特性的理解

   1)继承:继承是已有类得到继承信息创建新类的过程。提供信息的叫父类;得到继承信息的叫子类。继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段。

   2)封装:通常认为封装就是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是把显示世界描绘成一系列完全自治,封闭的对象。封装就是隐藏一切可以隐藏的东西,只对外界提供最简单的编程接口。

   3)多态:允许不同子类型的对象对同一消息做出不同的响应。简单地说是用同样的对象引用调用相同的方法但是做了不同的事。多态分为编译时多态和运行时多态。运行时多态是面向对象最精髓的东西,要实现多态需要做两件事:1.方法重写  2.对象造型

  4)抽象:抽象是一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注行为的细节是什么。

        默认:继承  封装   多态三大特性        四个加上   抽象

    2.  访问权限修饰符   public, private,protected 以及不写的区别

       修饰符       当前类            同包           子类               其他包

        public          可                 可                  可                   可

         protected    可                 可                 可                   否

       default          可                 可                 否                   否

        private         可                  否                否                    否

    3.如何理解clone 对象

3.1  为什么要用clone?

有一个对象A,在某一刻A中已经包含了一些有效值,此时需要一个和A完全相同新对象B,并且此后B改动不会影响A的值,A,B完全独立。B的初值是A对象确定的

实现clone()方法是其中最简单,也是最高效的手段。

3.2 new一个对象的过程和 clone一个对象的区别

          new的本意是分配内存。程序执行到new操作符时,首先去看new操作符后面的类型才知道要分配多大的内存空间。分配完内存后,在调整构造函数,填充对象的各个域,叫对象的初始化,构造方法返回后,一个对象创建完毕,可以把它的引用地址发到外部,在外部就可以使用这个引用操作这个对象。

          clone在第一步和new相似,分配内存,调用clone时,分配的内存和原对象相同,然后在使用原对象中对应的各个域,填充新对象的各个域,填充完成后,clone方法返回,一

个新的相同的对象被创建,同样可以把这个新对象的引用发布到外部。

3.3

 

posted @ 2022-07-01 10:42  李文浩learning  阅读(22)  评论(0)    收藏  举报