java语言基础和java面向物件要先学习哪个?
java语言基础和java面向物件要先学习哪个?

java语言基础和java面向物件要先学习哪个?
先学Java基础,Java就是面向物件的语言,学习Java基础后在学习java面向物件会简单一些,语言是基础
Java面向物件的学习
面向物件其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是物件。物件之间通过讯息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何物件都是某一类事物的例项。如果说传统的面向程序式程式设计语言是以过程为中心以演算法为驱动的话,面向物件的程式语言则是以物件为中心以讯息为驱动。用公式表示,程序式程式设计语言为:程式=演算法+资料;面向物件程式语言为:程式=物件+讯息。
所有面向物件程式语言都支援三个概念:封装、多型性和继承,Java也不例外。现实世界中的物件均有属性和行为,对映到计算机程式上,属性则表示物件的资料,行为表示物件的方法(其作用是处理资料或同外界互动)。所谓封装,就是用一个自主式框架把物件的资料和方法联在一起形成一个整体。可以说,物件是支援封装的手段,是封装的基本单位。Java语言的封装性较强,因为Java无全域性变数,无主函式,在Java中绝大部分成员是物件,只有简单的数字型别、字元型别和布林型别除外。而对于这些型别,Java也提供了相应的物件型别以便与其他物件互动操作。
多型性就是多种表现形式,具体来说,可以用"一个对外介面,多个内在实现方法"表示。举一个例子,计算机中的堆叠可以储存各种格式的资料,包括整型,浮点或字元。不管储存的是何种资料,堆叠的演算法实现是一样的。针对不同的资料型别,程式设计人员不必手工选择,只需使用统一介面名,系统可自动选择。运算子过载(operator overload)一直被认为是一种优秀的多型机制体现,但由于考虑到它会使程式变得难以理解,所以Java最后还是把它取消了。
继承是指一个物件直接使用另一物件的属性和方法。事实上,我们遇到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它可以分成多个子实体,如:卡车、公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的"父亲",而这些子实体则是汽车的"孩子"。Java提供给使用者一系列类(class),Java的类有层次结构,子类可以继承父类的属性和方法。与另外一些面向物件程式语言不同,Java只支援单一继承。
其实在没有面向物件的世界里也有继承,程式语言都支援int直接转换为float,这叫低型别转换为高型别。类是其实一个自定义资料型别,父类是高型别,子类是低型别。
程式设计学习的是思想,不是学习程式设计工具。自己要多练习!
JAVA,面向物件,基础
面向物件
封装的原则
要求使物件之外的部分不能随意存取物件的内部资料,从而有效避免了错误对它的“交叉感染”,使软体错误能区域性化,降低排错难度
继承
所有的类都继承自java.lang.Object,一些常用的方法:
equals():比较两个物件引用时否相同。
getClass():返回物件执行时所对应的类的表示,从而得到相应的资讯
toString():返回物件字串表示
finalize():用于在垃圾收集前清除物件
notify(), notifyall(), wait(): 用于多执行绪处理中的同步
子类(subclass)对父类(superclass,超类)的继承
子类不能继承父类中访问许可权为private的成员变数和方法。
子类可以重写父类的方法,及命名与父类同名的成员变数。
java面向物件程式设计和JAVA核心技术 基础 哪个适合有点C语言的基础的初学者
其实没有太大的区别。可以先学java面向物件的基础 然后在学别的
面向物件语言c++和java哪个好
c++和java都是面向物件,在一些语法结构和物件的处理的区别如下:
1.指标
JAVA语言让程式设计者无法找到指标来直接访问记忆体无指标,并且增添了自动的记忆体管理功能,从而有效地防止了c/c++语言中指标操作失误,如野指标所造成的系统崩溃。但也不是说JAVA没有指标,虚拟机器内部还是使用了指标,只是外人不得使用而已。这有利于Java程式的安全。
2.多重继承
c++支援多重继承,这是c++的一个特征,它允许多父类派生一个类。尽管多重继承功能很强,但使用复杂,而且会引起许多麻烦,编译程式实现它也很不容易。Java不支援多重继承,但允许一个类继承多个介面(extends+implement),实现了c++多重继承的功能,又避免了c++中的多重继承实现方式带来的诸多不便。
3.资料型别及类
Java是完全面向物件的语言,所有函式和变数部必须是类的一部分。除了基本资料型别之外,其余的都作为类物件,包括阵列。物件将资料和方法结合起来,把它们封装在类中,这样每个物件都可实现自己的特点和行为。而c++允许将函式和变数定义为全域性的。此外,Java中取消了c/c++中的结构和联合,消除了不必要的麻烦。
4.自动记忆体管理
Java程式中所有的物件都是用new操作符建立在记忆体堆叠上,这个操作符类似于c++的new操作符。下面的语句由一个建立了一个类Read的物件,然后呼叫该物件的work方法:
Read r=new Read();
r.work();
语句Read r=new Read();在堆叠结构上建立了一个Read的例项。Java自动进行无用记忆体回收操作,不需要程式设计师进行删除。而c十十中必须由程式贝释放记忆体资源,增加了程式设计者的负扔。Java中当一个物件不被再用到时,无用记忆体回收器将给它加上标签以示删除。JAVA里无用记忆体回收程式是以执行绪方式在后台执行的,利用空闲时间工作。
5.操作符过载
Java不支援操作符过载。操作符过载被认为是c十十的突出特征,在Java中虽然类大体上可以实现这样的功能,但操作符过载的方便性仍然丢失了不少。Java语言不支援操作符过载是为了保持Java语言尽可能简单。
6.预处理功能
Java不支援预处理功能。c/c十十在编译过程中都有一个预编泽阶段,即众所周知的前处理器。前处理器为开发人员提供了方便,但增加丁编译的复杂性。JAVA虚拟机器没有前处理器,但它提供的引入语句(import)与c十十前处理器的功能类似。
7. Java不支援预设函式引数,而c十十支援
在c中,程式码组织在函式中,函式可以访问程式的全域性变数。c十十增加了类,提供了类演算法,该演算法是与类相连的函式,c十十类方法与Java类方法十分相似,然而,由于c十十仍然支援c,所以不能阻止c十十开发人员使用函式,结果函式和方法混合使用使得程式比较混乱。
Java没有函式,作为一个比c十十更纯的面向物件的语言,Java强迫开发人员把所有例行程式包括在类中,事实上,用方法实现例行程式可激励开发人员更好地组织编码。
8 字串
c和c十十不支援字串变数,在c和c十十程式中使用Null终止符代表字串的结束,在Java中字串是用类物件(strinR和stringBuffer)来实现的,这些类物件是Java语言的核心,用类物件实现字串有以下几个优点:
(1)在整个系统中建立字串和访问字串元素的方法是一致的;
(2)J3阳字串类是作为Java语言的一部分定义的,而不是作为外加的延伸部分;
(3)Java字串执行执行时检空,可帮助排除一些执行时发生的错误;
(4)可对字串用“十”进行连线操作。
9“goto语句
“可怕”的goto语句是c和c++的“遗物”,它是该语言技术上的合法部分,引用goto语句引起了程式结构的混乱,不易理解,goto语句子要用于无条件转移子程式和多结构分支技术。鉴于以广理由,Java不提供goto语句,它虽然指定goto作为关键字,但不支援它的使用,使程式简洁易读。
l0.型别转换
在c和c十十中有时出现数据型别的隐含转换,这就涉及了自动强制型别转换问题。例如,在c十十中可将一浮点值赋予整型变数,并去掉其尾数。Java不支援c十十中的自动强制型别转换,如果需要,必须由程式显式进行强制型别转换。
11.异常
JAVA中的异常机制用于捕获例外事件,增强系统容错能力
try{//可能产生例外的程式码
}catch(exceptionType name){
处理
}
java面向物件怎么学
就是一种抽象表达事物的思维方式;
面向物件的分析根据抽象关键的问题域来分解系统。面向物件的设计是一种提供符号设计系统的面向物件的实现过程,它用非常接近实际领域术语的方法把系统构造成“现实世界”的物件。
面向物件程式设计可以看作一种在程式中包含各种独立而又互相呼叫的物件的思想,这与传统的思想刚好相反:传统的程式设计主张将程式看作一系列函式的集合,或者直接就是一系列对电脑下达的指令。面向物件程式设计中的每一个物件都应该能够接受资料、处理资料并将资料传达给其它物件,因此它们都可以被看作一个小型的“机器”,即物件。
学习javascript是否需要有面向物件,如Java方面基础?
JavascriptJ初级不需要面向物件知识,但要深入学习JavaScript,需要学习面向物件知识,因为JavaScript也有物件这个概念,和Java的面向物件有些相似,但有也不同,有Java基础对JavaScript高阶程式设计有利。
其实告诉你
javascript和java没有一毛钱关系
就像雷锋和雷峰塔一样
而且现在js发展的也挺快
note.js现在也能做后台
怎么说呢 入门很容易 很好学
望你学有所成!
是的,有基础更好。js比java要容易学。js的封装、继承、多型,都是面向物件程式设计的特征。
先掌握面向物件程式设计思想,再学习语法结构,比较容易上手。
什么是java面向物件!
这是一种看待问题的思想,我打个比方:我们把一辆小轿车看做是一个物件,小轿车有颜色、有价格、有车牌号等等,这些都是它的属性,它能跑,它能加速,它能漂移!注意,这些都是它自己的功能,也就是方法。例项化一个物件可以看做是你指定这辆小轿车是红色的,价钱250,车牌8888,在建构函式初始化属性,好了,一辆小轿车被你生产出来啦!小轿车、卡车、货车······它们有一些共同的属性,抽象出来就把他们统称为车,这就是介面,小轿车可以说成车,车不一定是小轿车嘛!恩···这是个人理解,其实自己边学边领悟才行,不要勉强自己一下子就能理解面向物件