本文主要是介绍J2SE——面向对象基础知识积累,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
学习完J2SE中第三章的视频,让我们对面向对象有了更系统的认识,不断的积累基础知识,才能将我们的知识连成网……
一、
如果想要熟知面向对象的思想,首先我们要知道什么是类,什么是对象,以及它们之间的关系。
1、类是指具有同样特征的事物的抽象
对象是指这类事物的一个实例
2、类(对象)之间的关系
继承、聚合(聚集、组合)、关联、实现、多态
二、
当我们从面向过程的编程转向面向对象的编程的时候,要有面向对象的思想。那就是:
在考虑一个问题的时候,需要从两点入手:1、这个问题中有哪些对象(类),类都有哪些属性和方法2、类和类之间的关系。
抽象方法:通俗的说这个方法只有方法头,没有具体实现的代码,需要子类继承来实现。
接口(interface):是一种特殊的抽象类,里面的方法都是抽象方法,并且都是public。类与接口的关系是实现(implements)。一个类可以实现多个接口,一个接口可以被多个类实现。
如果这个类中含有抽象方法,那么这个类叫做抽象类。用关键字abstract表示。
三、
在编程中,内存分析是一直贯穿的,我们只有明白了每句代码在内存中的分布,才能写出更优的代码。
我们的内存分为四块区域:代码区、静态变量和字符串常量区、堆区、栈区
stack是栈,存放局部变量。
heap是堆,动态申请内存用的。基本上所有new出来的东西都在堆里面。
我们new出来一个新对象的时候,在栈区内存中有一小块内存保存这个变量的名字,在堆区开辟一大块内存保存这个变量。也就是引用:一小块内存(栈中)指向一大块内存(堆中)。
Static关键字:static的成员变量一般分布在data区域中,属于这个类的所有 对象,属于整个类。不需要new这个对象,就可以进行访问。非static的,必须new 一个对象才能进行访问。
四、
每一个新对象都有构造方法,构造方法和类同名,没有返回值,也没有void关键字。
对象中会有方法,方法可以被重载和重写。
重载:方法名一样,参数的类型或个数不同。
重写:子类继承父类的方法,进行一定的修改。
This关键字:指得是当前的对象。
当类很多时,为了解决类的重名问题,我们将类放在一个包中。这个类打好包之后必须将这个类的class放在规定的目录下面。当引用这个类的时候可以是将这个类的路径写全了,也可以是通过import关键字来进行引用。注意:这个类所在的包的目录必须在classpath 下面。或者是打一个jar包,这个jar包在classpath里。当classpath中有两个重名的类时,要注意先后顺序。
每个类都有自己的访问控制,这就是由它的访问控制关键字来决定:
private私有的,只有自己能访问
default同一个包里的其他类可以访问
protected子类可以访问
public公有
注意:所有的关键字都可以修饰内部类
当类中出现final关键字,(相当于const)那么:
final的变量不能改变值
final的方法不能被重写
final的class不能被继承
五、
面向对象的一个大特点是:多态(polymophysm)。多态的条件是:1、有继承2、有重写3、父类应用指向子类。
总结:面向对象是编程的一个重要的思想,我们需要不断的积累基础知识,慢慢的认识,让自己理解的更深刻。从基础知识开始积累,编织自己的知识网。
这篇关于J2SE——面向对象基础知识积累的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!