j2se复习之基本概念
j2se(java standard platform)是学习java开发技术的基础,今天对其中的一些基本概念进行总结复习总结,来起到激励的作用:
1.Java是一门面向对象的语言 ,什么是面向对象呢?早期的一些语言,比如C,是面向过程的函数式编程,通过模拟事情发展的过程,借助自上而下、逐步求精的方式,将问题分解成为一个小问题,通过函数调用将子问题联系起来,并没有对数据和代码(数据的处理序列)进行 分离,因此修改是比较困难的;而面向对象的语言,比如Java,不是模拟事情发展的过程,而是站在更高的角度,对 现实世界进行模拟,将万事万物抽象,用数据模拟一个事物静态的性质,比如一个人的身高,用方法(函数)来模拟一个事物的行为,比如一个人学习这件事。编程时解决现实问题,是对现实的模拟,面向对象的设计语言模拟的角度就是“对象”,所以它的一切都是围绕“对象”,因此Java语言编程时,首先 要解决的问题是考虑问题中对象的种类,然后才是针对这些对象来设计这些不同对象的结构,以此建立这些对象间的联系(消息传递机制),最后就是对象的正确创建与消息传递了。
2.关于类、对象、方法、接口这些面向对象基本的概念,是在编程中慢慢建立起来的,让我们自己个人构建一个模拟现实世界的系统是非常困难,因此,就有团体创建出来可以供大家使用的一些组织非常巧妙,能够很好的模拟现实问题的一系列类以及各种规范,它们包含在sun公司开发的jdk中,jdk并不只是这些类的集合,还包括一些工具软件,支持你在操作系统上调试运行你的程序。
3.Java具有的优点是非常多,其中最显著的一点就是跨平台,Java实现跨平台的办法是采取Java虚拟机机制,它是对不同机器上运行的操作系统的抽象,Java程序会被编译成为一个字节码文件,真正的执行是在Java虚拟机上,它负责调整不同机器之间的差异,将字节码文件翻译成机器能够识别的序列。
4.Java语法基础,个人感觉了解个大概就行,其他各种细节还是要在实际编程中体会。在java中,数据类型分为两种,基本数据类型和引用数据类型。基本数据类型包括short、int、long、float、double、char、boolean、byte八种,被称为元数据(不可再分),而其他的那些对象就被称为引用数据类型,这个名字涉及到Java实际的内存运行机制(在Java中创建一个对象,实际的有关数据是存放在堆内存中,为了方便对数据进行访问,便为对象在栈内存中创建一个指向堆内存数据实际存放地方的信息,称为引用,也就是句柄,根据 它,可以获得一个对象相关信息,并对它进行操作 ),基本数据类型的数据存放在栈上。其他的诸如循环语句、判断语句 、变量的声明、初始化,与C语言相差不多,只是在引用数据类型的创建时有一个构造器的概念不同而已。
5.Java中有很多关键字,也是需要在实践中才能慢慢体会它们的用处。一些常见的,比如static静态的,他可以用来修饰方法、属性,被它修饰的方法中不能调用非静态方法,被它修饰的成员的作用域延展至整个程序结束;比如public、private、protected这些用来对类进行界定的关键字,被private修饰的成员只在本类中可见,被protected修饰的成员还在子类中可见,被public修饰的成员在其他类中都可见,默认是包级访问控制权限,还有关于继承的extends,关于实现接口implements,关于抽象的abstract等
6.抽象类 、接口的概念也是比较最重要的,关于接口,其中存放着方法的声明、还有一些属性,继承了接口,其中的方法必须被重写,Java中类只能继承一个类,但可以实现多个接口,抽象类、接口实现了对具体代码的隐藏。
7.继承和实现,子类继承父类,利用现有的类构建自己需要的类,子类继承父类的成员(private除外)、方法,这意味着保留了 原来已经实现的功能,此外,可以在此基础上进行扩展,即定义自己的成员,定义自己的方法,重写父类中的方法,从而达到 实现构建新类的目的;还可以通过实现某个固定接口来达到构建新类的目的。Java中的重载也是一个非常重要的概念,方法的名字可以相同,但是传递的消息一定不能相同。
8.Java中最重要的多态,通俗将就是父类对象指向子类对象,降低了代码复用的难度,降低了我们修改代码的难度。从我个人的理解它是让消息的传递更为智能,是对我们人类解决问题思想的模拟 ,即对于不能 即刻得到的信息在进行归类,然后设定成使用时的规范,Java中的多态可以说比比皆是,甚至于随便到你设计任何一个中的消息接收机制时,都可以将它设计成object类(但要求使用泛型)。
9.j2se中这些基本概念都是应该结合具体实例来进行加深理解的,别人设计的类的架构中这些概念的具体体现会帮助你更好的理解。
并不是走的多远,而是一直走下去,直到走不动的那天。以上只为个人的复习总结,有很多东西没表达出来,也有错漏的地方,但是大体的方向没有错,它存在的意义只是我对自己的道路的一个总结,对以后道路的明确而已,或好或坏,愿君一笑。