多态类:在java中,对象变量是多态的。而java中不支持多重继承。
抽象类:规定一个或多个抽象方法的类本身必须定义为abstract。
例: public abstract string getDescripition
Java中的每一个类都是从Object类扩展而来的。
object类中的equal和toString方法。
equal用于测试一个对象是否同另一个对象相等。
toString返回一个代表该对象的字符串,几乎每一个类都会重载该方法,以便返回当前状态的正确表示。
(toString 方法是一个很重要的方法)
通用编程:任何类类型的所有值都可以同object类型的变量来代替。
封装:就是把数据和行为结合起在一个包中)并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(instance field)。
重载:当多个方法具有相同的名字而含有不同的参数时,便发生重载。编译器必须挑选出调用哪个方法。
数组列表:ArrayList动态数组列表,是一个类库,定义在java.uitl包中,可自动调节数组的大小。
class类 object类中的getclass方法返回class类型的一个实例,程序启动时包含在main方法的类会被加载,虚拟机要加载他需要的所有类,每一个加载的类都要加载它需要的类。
Java与C/C++的差异
熟悉C语言和C++语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物.比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言,C++语言完全相同.尽管如此,Java和C语言,C++语言又有许多差别,主要表现在如下几个方面:
(1) Java中对内存的分配是动态的,它采用面向对象的机制,采用运算符new为每个对象分配内存空间,而且,实际内存还会随程序运行情况而改变.程序运行中,每个, Java系统自动对内存进行扫描,对长期不用的空间作为”垃圾”进行收集,使得系统资源得到更充分地利用.按照这种机制,程序员不必关注内存管理问题,这使Java程序的编写变得简单明了,并且避免了了由于内存管理方面的差错而导致系统出问题.而C语言通过malloc()和free()这两个库函数来分别实现分配内在和释放内存空间的,C++语言中则通过运算符new和delete来分配和释放内存.在C和C++这仲机制中,程序员必须非常仔细地处理内存的使用问题.一方面,如果对己释放的内存再作释放或者对未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,则会浪费系统资源,甚至因此造成资源枯竭.
(2) Java不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变量的功能.
(3) Java不用goto语句,而是用try-catch-finally异常处理语句来代替goto语句处理出错的功能.
(4) Java不支持头文件,而C和C++语言中都用头文件来定义类的原型,全局变量,库函数等,这种采用头文件的结构使得系统的运行维护相当繁杂.
(5) Java不支持宏定义,而是使用关键字final来定义常量,在C++中则采用宏定义来实现常量定义,这不利于程序的可读性.
(6) Java对每种数据类型都分配固定长度.比如,在Java中,int类型总是32位的,而在C和C++中,对于不同的平台,同一个数据类型分配不同的字节数,同样是int类型,在PC机中为二字节即16位,而在VAX-11中,则为32位.这使得C语言造成不可移植性,而Java则具有跨平台性(平台无关性).
(7) 类型转换不同.在C和C++中,可通过指针进行任意的类型转换,常常带来不安全性,而在Java中,运行时系统对对象的处理要进行类型相容性检查,以防止不安全的转换.
(8) 结构和联合的处理.在C和C++中,结构和联合的所有成员均为公有,这就带来了安全性问题,而在Java中根本就不包含结构和联合,所有的内容都封装在类里面.
(9) Java不再使用指针.指针是C和C++中最灵活,也最容易产生错误的数据类型.由指针所进行的内存地址操作常会造成不可预知的错误,同时通过指针对某个内存地址进行显式类型转换后,可以访问一个C++中的私有成员,从而破坏安全性.而Java对指针进行完全地控制,程序员不能直接进行任何指针操作.
分享到:
相关推荐
对于初学者来说,理解和掌握以下几个关键概念至关重要。 1. **面向对象编程(OOP)**:Java 是一种典型的面向对象编程语言,它强调通过类和对象进行编程。OOP 的核心思想包括封装、继承和多态,这有助于提高代码的...
【Java新手入门的30个基本概念】 Java作为一种广泛使用的编程语言,因其强大的跨平台能力、面向对象的设计和丰富的库支持而备受青睐。对于初学者来说,理解和掌握以下几个关键概念至关重要: 1. **面向对象...
在这个"java新手_入门算法_经典"的学习资料中,包含了几个关键的算法和概念,这些都是学习Java编程的基础。 首先,"构成何种三角形"这个知识点涉及到几何学和条件判断。在编程中,你可以通过输入三边长度来判断一个...
首先,Java入门的基础部分通常涵盖以下几个关键知识点: 1. **Java环境配置**:安装Java Development Kit (JDK),设置JAVA_HOME环境变量,配置PATH,这些都是初学者首先要了解和操作的步骤。 2. **Java语法基础**...
最后,熟悉Java的标准库(Java API)也很重要,它包含了大量的预定义类和方法,涵盖了输入输出、网络编程、线程处理等多个领域。随着学习的深入,初学者还可以接触到更高级的主题,如并发编程、JDBC(Java数据库连接...
Java 7增加了几个实用的工具,如`jshell`(一个交互式的Java解释器),以及其他用于调试和性能分析的工具。 ### 获取《Java 7经典入门》书籍 《Java 7经典入门》是一本非常适合Java初学者使用的教材,书中详细介绍...
标题“Java新手入门”意味着我们将探讨Java编程的基础概念,这对于那些刚刚接触这个领域的学习者至关重要。在Java的学习过程中,以下几个核心知识点是必须掌握的: 1. **基础语法**:包括变量、数据类型(如整型、...
Java入门基础教程是针对初学者精心编排的一套学习资源,旨在帮助新手快速掌握Java编程语言的基本概念和技能。这份教程包含的“Java基础教程.pdf”文档,将全面讲解Java的核心概念,为后续深入学习打下坚实的基础。 ...
首先,零基础入门Java.txt这个文件很可能包含了课程大纲或学习路径,可能包括以下几个部分: 1. **Java简介**:讲解Java的历史、特点以及它在软件开发中的作用,引导学员理解为何选择学习Java。 2. **安装Java开发...
首先,Java的“入门”阶段主要涉及以下几个核心知识点: 1. **Java环境搭建**:学习如何下载并安装Java Development Kit (JDK),设置环境变量,包括JAVA_HOME、PATH和CLASSPATH,确保系统能够正确识别和运行Java...
Java实列入门实列是初学者踏入Java编程世界的重要步骤,这个资料集合提供了一系列的示例,帮助新手理解并掌握Java的基本概念和语法。在这个过程中,我们将会探索以下几个关键知识点: 1. **Java环境配置**:在开始...
Java小程序,作为初学者入门的重要资源,集合了各种基础概念和编程技巧,旨在帮助新手快速理解和掌握Java语言。这些小程序涵盖了从基本语法到面向对象编程的各个层面,为学习者提供了一个实践和巩固理论知识的平台。...
这份教程承诺在短短十天内带你从零基础到能够初步精通Java编程语言,是适合新手入门的学习资源。 Java语言以其跨平台、面向对象和强大的功能特性,在软件开发领域广泛应用。通过本教程,学习者将逐步了解并掌握以下...
在学习Java时,以下几个关键知识点不容忽视: 1. **基础语法**:了解基本的数据类型(如整型、浮点型、字符型和布尔型),变量的声明与赋值,以及控制流程语句(如if条件语句、for循环、while循环和switch语句)。 ...
"2022最新Java入门(Java SE基础)"这个标题表明我们将会探讨的是Java的基础知识,特别是针对初学者的内容,旨在帮助他们进入Java编程的世界。Java SE(Java Standard Edition)是Java的标准化版本,适用于桌面应用...
在Java入门阶段,你需要了解以下几个核心知识点: 1. **Java环境配置**:首先,你需要安装Java Development Kit (JDK)并在计算机上设置环境变量,确保可以运行Java编译器(javac)和Java虚拟机(JVM)。 2. **Java...
本资源"300个Java练习 入门 精通"旨在帮助新手快速掌握Java编程基础,并通过实践提升至精通水平。这300个练习覆盖了从基础语法到高级特性的方方面面,确保学习者能够全面理解Java编程的核心概念。 1. **Java基础** ...