A. java oop
OOP: Object Oriented Programming,面向对象的程序设计。所谓“对象”就是一个或一组数据以及处理这些数据的方法和过程的集合。面向对象的程序设计完全不同于传统的面向过程程序设计,它大大地降低了软件开发的难度,使编程就像搭积木一样简单,是当今电脑编程的一股势不可挡的潮流。
面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。OOP 主要有以下的概念和组件:
组件 - 数据和功能一起在运行着的计算机程序中形成的单元,组件在 OOP 计算机程序中是模块和结构化的基础。
抽象性 - 程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。
封装 - 也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。
多态性 - 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。
继承性 - 允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。
由于抽象性、封装性、重用性以及便于使用等方面的原因,以组件为基础的编程在脚本语言中已经变得特别流行。Python 和 Ruby 是最近才出现的语言,在开发时完全采用了 OOP 的思想,而流行的 Perl 脚本语言从版本5开始也慢慢地加入了新的面向对象的功能组件。用组件代替“现实”上的实体成为 JavaScript(ECMAScript)得以流行的原因,有论证表明对组件进行适当的组合就可以在英特网上代替 HTML 和 XML 的文档对象模型(DOM)。
B. Java OOP 是什么
oop的全称是
object
oriented
programming,就是面向对象编程。
java语言所说的面相对象是相对于传统编程语言(比如c语言)的面向过程编程思想而言的。
C. java面试提问:什么是OOP
OOP: Object Oriented Programming,面向对象的程序设计。所谓"对象"在显式支持面向对象的语言中,一般是指类在内存中装载的实例,具有相关的成员变量和成员函数(也称为:方法)。面向对象的程序设计完全不同于传统的面向过程程序设计,它大大地降低了软件开发的难度,使编程就像搭积木一样简单,是当今电脑编程的一股势不可挡的潮流。
(3)javaoop编程扩展阅读:
OOP 的优点:使人们的编程与实际的世界更加接近,所有的对象被赋予属性和方法,结果编程就更加富有人性化。
· OOP 的也有缺点,就 C++ 而言,由于面向更高的逻辑抽象层,使得 C++ 在实现的时候,不得不做出性能上面的牺牲,有时候甚至是致命的 ( 所有对象的属性都经过内置多重指针的间接引用是其性能损失的主要原因之一;不过,笔者的局限性在于未使用过 VC++ 外的面向对象语言,所以不是十分肯定,哈哈,有人笑出来了… )。
在计算机速度飞速发展的今天,你可能会说,一丁点的性能牺牲没什么大不了。是的,从面向对象的角度,使的编程的结构更加清晰完整,数据更加独立和易于管理,性能的牺牲可以带来这么多的好处,没有理由不做稳赚的生意吧?
不过,在某些对速度要求极高特殊场合,例如你做的是电信的交换系统,每秒钟有超过百万的人同时进行电话交换,如果,每一个数据交换过程都是一个对象,那么总的性能损失将是天文数字!!
D. 学java OOP和.NET OOP是一个概念吗
OOP是一种程序设计理念,目前流行的语言中,java和C#都是很完善的支持这种编程方式的。
OOP是不分语言的,在任何一种语言设计中都可以存在,只要这些语言支持!
E. JAVAOOP方面
OOP就是面向对象编程 把所有东西都看成对象 比如 人 就是一个对象
对象有属性 和方法
属性 用来表示对象的状态/数据 (现实对象的名词/形容词)
人 的属性 姓名 年龄 性别 种族 身高 体重 等等。。
方法 用来表示对象的行为/提供的服务 (现实对象的动词)
人 的方法 吃 喝 拉 撒 睡 说 走 等等
多态 同样的方法 对不同的对象 有不同的处理
婴儿 是 人 的子类 有 吃 方法 但 人 可以嚼 婴儿 不能嚼
人 有 拿 方法 对锤子 和 鸡蛋 的处理不同 一个用力大 一个用力小
接口 就是一组方法的定义
食物接口 必须有 补充能量 方法
交通工具接口 必须有 移动 方法
通讯工具接口 必须有 接收信息 发送信息 方法
给你推荐本书 Beginning Java Objects 我看这本书之前看的书大多讲的都是java的如何编写代码 对概念讲的不细 这本书专门讲概念 思维方式
F. java的oop编程的多态怎么理解
OOP就是面向对象,把所有的东西看做是一个对象,都是在操作那个对象!我们只要拿到那个对象就能拿到那个对象里面的东西!静态的多态就是只函数的重载,动态的多态就是方法的覆写 JAVA中多态主要是由overload和override来表现,overload是指在一个类中的不同的方法拥有相同的方法名,不同的引数列(参数)或返回类型;override是指在继承关系中子类中的方法具有和父类的方法一样的返回类型和引数列(参数)
在JAVA中还有一种表现多态的形式,不过不是很常用,叫做向下转型,也是发生在继承关系中的,举个例子:
class A{
...
}
class B extends A{
A b=new B();//向下转型
...
}
class C extends A{
A c=new C();//向下转型
...
}
G. Java oop编程题目
import java.util.Scanner;//定义接口
public interface animals {
String monkey = "猴子";
String elephant = "大象";
String peach = "桃子";
String banana = "香蕉";
}
//这是猴子的类
class monkey implements animals{
public void monkeyeat(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要给猴子吃的食物");
String food1 = sc.next();
if(food1.equals(peach)){
System.out.println("你给猴子吃的食物是"+peach+",请选择要给它吃好的还是坏的");
String choose1 = sc.next();
if(choose1.equals("好的")){
System.out.println("猴子吃到了好的"+peach+",猴子笑哈哈");
}else if(choose1.equals("坏的")){
System.out.println("猴子吃到了坏的"+peach+",哭了起来");
}else{
System.out.println("您的输入有误,请输入好的或者坏的");
}
}
else if(food1.equals(banana)){
System.out.println("你给猴子吃的食物是"+banana+",请选择要给它吃好的还是坏的");
String choose2 = sc.next();
if(choose2.equals("好的")){
System.out.println("猴子吃到了好的"+banana+",猴子跳起来");
}else if(choose2.equals("坏的")){
System.out.println("猴子吃到了坏的"+banana+",扔掉"+banana);
}else{
System.out.println("您的输入有误,请输入好的或者坏的");
}
}else{
System.out.println("您输入的食物有误,这里只有"+peach+"和"+banana+"两种食物");
}
}
}
//这是大象的类
class elephant implements animals{
public void elephanteat(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要给大象吃的食物");
String food2 = sc.next();
if(food2.equals(peach)){
System.out.println("你给大象吃的食物是"+peach+",大象不吃桃子");
}else if(food2.equals(banana)){
System.out.println("你给大象吃的食物是"+banana+",请选择要给它吃好的还是坏的");
String choose3 = sc.next();
if(choose3.equals("好的")){
System.out.println("大象吃到了好的"+banana+",大象翘鼻子");
}else if(choose3.equals("坏的")){
System.out.println("大象吃到了坏的"+banana+",吐了出来");
}else{
System.out.println("您的输入有误,请输入好的或者坏的");
}
}else {
System.out.println("您输入的食物有误,这里只有"+peach+"和"+banana+"两种食物");
}
}
}
//测试类
class Test{
public static void main(String []args){
monkey one = new monkey();
one.monkeyeat();
elephant two = new elephant();
two.elephanteat();
}
}