`
jianghe_03
  • 浏览: 107315 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

向对象的概念和JAVA实现

    博客分类:
  • J2SE
阅读更多
本章内容:
1、面向对象编程和面向过程编程
2、理解类和对象
3、编写一个类、创建一个对象
4、类中的方法、属性


(一)、什么是对象???

oop:Object  oriented  Programming

对象是指现实世界中实实在在存在的实体,

例如:一个A学生、一个B学生、一个C老师、一个D老师等等.

(二)、面向对象编程和面向过程编程
例如:夏天来了,教室很热,小楚同学想解决很热的问题???

用面向过程的方式来解决的话,那么,我们会这样来做:

第一步:拿出一张纸

第二步:折成扇子形

第三步:用手开始扇风

对于上面的例子,这是一个同学解决自己的热的问题,如果全班二十七个同学每个人都要解决天热的问题,那么,二十七个同学都会执行上面的三个步骤来完解决天热的问题,我们也可以看到,上面的三个步骤执行了二十七次。

面向过程编程:通过设计一系列的步骤来解决某一个问题。(注重步骤)



如果是用面向对象的方式来解决的话,那么,我们要如何解决呢???
我们就会想,能不能创建出这么一个东西,可以让它来完成全班二十七个人热的问题呢??

那么,我们就会创建一个空调,放在教室中,打开后,就可以解决全班同学热的问题。
如果另一个教室的学生也热的话,那么,我们就会创建另一个空调,放在另一个教室中,解决另一班学生天热的问题。

面向对象编程:通过创建对象来解决一类问题。(强调对象)

oop的关键是让每一个对象负责执行一组相关的任务。如果一个对象依赖于别一个对象负责处理的任务,那么它就去访问那个包括该任务的对象。



例如:空调就是解决天热任务的对象,学生就依赖空调这个对象能处理天热任务的功能来解决天热的问题,所以,学生这个对象就会去使用空调这个对象。

(三)、理解类和对象
1、什么是类???
类是具有相同属性和共同行为的一组对象的集合

我们前面讲过对象,如下面

一个A学生、一个B学生、一个C老师、一个D老师

我们来分析一下这四个对象

一个A学生:

姓名:A 身份:学生  行为:学习

一个B学生:

姓名:B 身份:学生  行为:学习

一个C老师:

姓名:C 身份:老师  行为:教育学生

一个D老师

姓名:D 身份:老师  行为:教育学生


我们可以发现前两个对象是属于学生类的,因为这两个对象的相同属性都是学生,共同行为是学习

后两个对象属于教师类,这两个对象的相同属性都是老师,行为都是教育学生


例如:


一个白菜饺子、一个红萝卜饺子、一个黑芝麻汤圆、一个黄菠萝汤圆

一个白菜饺子:

名称:白菜饺子  颜色:白  形状:扇形、大肚子、皮薄 馅料:白菜  味道:咸的  材料:面粉  作用:给人吃

一个红萝卜饺子:
名称:红萝卜饺子  颜色:红  形状:扇形、大肚子、皮薄 馅料:红萝卜  味道:咸的  材料:面粉  作用:给人吃

一个黑芝麻汤圆:

名称:黑芝麻汤圆  颜色:黑  形状:圆形、皮厚、没有肚子 馅料:黑芝麻  味道:甜的    材料:糯米粉  作用:给人吃

一个黄菠萝汤圆:

名称:黄菠萝汤圆  颜色:黄  形状:圆形、皮厚、没有肚子 馅料:菠萝    味道:甜的  材料:糯米粉  作用:给人吃


前两个对象属于饺子类,相同属性是扇形、咸的 、面粉

后两上对象属于汤圆类,相同属性是圆形、甜的、糯米粉

2、类和对象的区别
我们把前面的饺子类和汤圆类可以想像成为一个饺子模具和汤圆模具,

那么我们可以使用这个模具做出我们的白菜饺子和红萝卜饺子,还有我们的黑芝麻汤圆和黄菠萝汤圆

从上面我们也可以得出,类是对象的模板和原型,每一个对象则是类的一个实例。

(四)、创建类、对象
从上面对类和对象的理解来看,我们也就可以将程序员分出两种角色,一种是类的创建者,一种是类的使用者。前面讲的,空调厂家生产出有降温功能的空调,我们只要买空调回家使用降温功能;模具厂生产出饺子模具,我们只要用这个模具回家制作出各种不同的饺子就可以了。

对于我们现在来说,我们是处于一个什么样的角色中呢???

答案是“使用者”。为什么这么说呢???

Integer.parseInt()这是一个整类,这个类中有一个方法,就是将字符串转成整型。

这个Integer这个类是由别人写好的,如果我们要将字符串转成整型时,就可以使用这个类中的pasreInt()这个方法。


创建一个饺子类(饺子数据类型)

class  ClsJiaoZi
{                                                //定义属性

    String  jzName;                              //名称
    String  jzColor;                            //颜色
    String  jzMaterial=”面粉”;                //材料
    String  jzFigure=” 扇形、大肚子、皮薄”;    //形状
    String  jzStuffing;                          //馅

}



前面是创建好了一个饺子类,接下来,我们要使用这个饺子类来制作饺子,如何创建一个一个的饺子呢????
class    ClsTest
{
    public  static  void  main(String args[])
    {
          ClsJiaoZi  jzOne=new  ClsJiaoZi();                 //实列化ClsJiaoZi类
          jzOne.jzStuffing=”白菜”;                          //赋值
          jzOne.jzColor=”白色”;                            //赋值
          jzOne.jzName=”白菜饺子”;                          //赋值
          System.out.println(“名称:”+ jzOne. jzStuffing);  //输出
          System.out.println(“颜色:”+ jzOne. jzColor);    //输出
          System.out.println(“材料:”+ jzOne. jzMaterial);  //输出
          System.out.println(“形状:”+ jzOne. jzFigure);    //输出
          System.out.println(“馅:”+ jzOne. jzStuffing);   //输出
          ClsJiaoZi  jzOne=new  ClsJiaoZi();                 //继续实列化ClsJiaoZi类
          jzOne. jzStuffing=”红萝卜”;                      //再次赋值
          jzOne.jzColor=”红色”;                            //再次赋值
          jzOne.jzName=”红萝卜饺子”;                        //再次赋值
          System.out.println(“名称:”+ jzOne. jzStuffing);  //再次输出
          System.out.println(“颜色:”+ jzOne. jzColor);     
          System.out.println(“材料:”+ jzOne. jzMaterial);
          System.out.println(“形状:”+ jzOne. jzFigure);
          System.out.println(“馅:”+ jzOne. jzStuffing);
    }
}


从上面的例题,我们可以看出,类只用来实例化对象,要使用我们定义的属性,就要能过对象来调用。

例:创建一个空调类,属性:颜色、形状;行为:制冷、制热

例:创建一个学生类,属性:姓名、学号、性别、年龄;行为:学习、考试

属性有四种:

1、 定义在类中的属性,叫对象的属性
2、 定义在方法中的属性,叫方法的属性
3、 定义在类中的属性,但加上了static关键字的修饰属性,叫类的属性
4、 定义在类中的属性,但加上了final关键字修饰的属性,也是通过对象调用。
但表示这个属性为不可变。
分享到:
评论

相关推荐

    ACCP5.0S2教程\使用Java实现面向对象编程(Java OOP)\使用Java实现面向对象编程(Java OOP)上机贯穿案例源码

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的复用和模块化,提高了软件开发的效率和可维护性。在Java语言中,...

    java面向对象的概念

    Java面向对象的概念是Java编程的核心思想,它模拟真实世界中对象和类的模型,以便于构建复杂的软件系统。面向对象编程(Object-Oriented Programming,OOP)的主要目标是提高代码的可重用性、可维护性和灵活性。 1....

    ACCP 5.0 S2_使用JAVA实现面向对象编程

    本课程"ACCP 5.0 S2_使用JAVA实现面向对象编程"主要涵盖了以下几个关键知识点: 1. 类与对象:类是创建对象的蓝图,它定义了一组属性(数据成员)和方法(成员函数)。对象则是类的实例,具有类所定义的属性和行为...

    Java实现面向对象编程2章示例

    在北大青鸟S2课程中,第二章主要讲解了如何使用Java来实现面向对象编程的基本概念和技术。 首先,我们来理解面向对象编程的三大基本概念:封装、继承和多态。 1. 封装:封装是将数据和操作数据的方法捆绑在一起,...

    使用Java实现面向对象编程

    在本课程“使用Java实现面向对象编程”中,我们将深入探讨这些概念并结合实际示例进行学习。 首先,我们来理解面向对象的基本概念: 1. 类(Class):类是创建对象的模板或蓝图,定义了一组特性和行为。在Java中,...

    使用Java实现面向对象编程课件

    以上知识点是Java实现面向对象编程的基础,掌握这些概念和用法对于编写高效、可维护的Java代码至关重要。通过对S2阶段的学习,你将深入理解这些概念,并能够熟练地应用到实际项目中。课件和课后习题将帮助你巩固理论...

    面向对象的概念和 Java 实现-2.ppt

    理解继承及其特点 运用JAVA程序实现继承 理解多态及其特点设计 运用JAVA程序实现多态 掌握访问修饰符和方法修饰符

    面向对象的概念和 Java 实现.ppt

    理解对象 理解类 理解抽象和封装 理解对象与类之间的关系 掌握包的创建和导入

    ACCP6.0使用Java实现面向对象编程完整课件

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法...在学习过程中,不断实践和理解这些概念,将有助于你更好地运用Java进行面向对象的设计和开发。

    面向对象编程C++和Java比较教程 中英文完整版 pdf

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它通过将数据和操作数据的方法封装在对象中,实现了程序设计的模块化和抽象化。本教程对比了两种广泛应用的面向对象语言——C++和Java...

    面向对象编程(Java).pdf

    Java是一种广泛使用的面向对象编程语言,它封装了数据和操作数据的行为,并支持继承和多态特性,使得Java程序可以高度模块化和复用。在Java中,面向对象编程(OOP)的三大基本特性是封装、继承和多态。 封装是面向...

    北大青鸟6.0S2使用Java实现面向对象编程

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起,提供了一种更高效、更灵活的编程方式。在Java语言中,面向对象编程是其核心特性之...

    Java面向对象精髓编程

    Java面向对象精髓编程是Java开发的核心概念,它涵盖了类、对象、封装、继承、多态等关键要素。本文将深入探讨这些概念,并结合实际案例,帮助初学者从零开始掌握Java编程。 首先,我们从“Hello, World!”开始。这...

    JAVA 教学 PPt(接口,类和对象尤其详尽)

    在Java编程语言中,接口、类和对象是核心概念,对于理解和构建复杂的软件系统至关重要。让我们深入探讨这些主题。 1. 接口(Interface): Java中的接口是一种完全抽象的类型,它定义了一组方法的签名,但不包含...

    Java面向对象程序设计

    本教程涵盖了这一关键概念,旨在帮助学习者深入理解和掌握Java的面向对象特性。以下是相关知识点的详细说明: 1. **面向对象编程基础**:面向对象编程(OOP)是一种编程范式,它基于“对象”的概念,强调数据和操作...

    Java面向对象程序设计课后答案全解

    学习如何创建和使用类及对象,是理解Java面向对象编程的关键。 2. **封装**:封装是面向对象的核心特性之一,它隐藏了对象内部的实现细节,只对外提供公共接口进行交互。通过访问修饰符(public, private, ...

    面向对象编程:C++与Java比较教程 英文版

    第15章讲述了扩展类的概念,这是面向对象编程中实现代码复用和模块化的重要方法。 第16章探讨了C++中的多重继承,这是一种高级特性,能够创建复杂的类层次结构,但同时也带来了复杂性。 第17章提供了一个面向对象...

    java实现http请求以及解析json与java对象转换 项目源代码实例

    具体到这个"java实现http请求以及解析json与java对象转换"项目,你可以期待以下几个关键知识点: 1. **HTTP请求**: - GET请求:获取服务器上的资源。 - POST请求:向服务器提交数据,常用于表单提交或API接口...

Global site tag (gtag.js) - Google Analytics