Java(五)——面向对象

面向过程、面向对象、属性、包、方法、冒泡排序Java
摘要由CSDN通过智能技术生成

目录

1、面向过程

1.1、面向过程程序特点

1.2、面向过程思想对应的问题

1.3、面向过程程序的不足

1.4、本质

2、面向对象

2.1、类

2.2、类和对象的关系

3、创建类和对象

3.1、类的组成部分

3.2、声明一个类

3.3、声明一个对Person进行测试的类

4、包

5、类的成员之一:属性

5.1、声明属性的语法格式

5.2、属性名

6、变量的分类:成员变量与局部变量

7、面向对象基本情况

7.1声明变量

创建对象

方法调用

main方法执行完成

7.2、创建两个对象

创建第一个对象

创建第二个对象

第一个变量设置属性

第二个变量设置属性

两个变量指向创建的同一个对象

分别用两个变量修改weight属性:

变量置空

8、方法

8.1、概念

8.2、参数和返回值

8.3、声明方法的代码

8.4、调用方法的代码

8.5、方法相关规则

8.5、方法练习

9、冒泡排序Java


面向对象:Object Oriented Programming

面向过程:Procedure Oriented Programming

封装:Encapsulation     继承:Inheritance    多态:Polymorphism

1、面向过程

1.1、面向过程程序特点

在顺序、分支、循环结构中,操作变量中存储的数据。

1.2、面向过程思想对应的问题

面向过程这种程序设计理念,对应现实生活中某一个点上具体的问题,特别是对应解决问题过程中具体的操作步骤。

1.3、面向过程程序的不足

最大的不足:整个系统各个组成部分之间 耦合 太严重。

从开发角度来说:对任何一个细微的地方做修改、调整、升级都会不可避免的影响到其他部分。

从运行角度来说:整个系统中有任何一个数据发生了变化,相关的很多部分都要重新运算,非常浪费性能。

1.4、本质

从面向过程的思想发展到面向对象的思想根本原因就是因为随着时代、市场等方方面面的发展,要求程序员编写更加复杂的程序,设计更加庞大的系统。

由非常多组成部分有机结合在一起的系统是面向过程代码无法容纳的。

2、面向对象

将现实世界内的东西抽象为代码。

2.1、类

程序中的   类   ,对应到生活中就是对同一类事物的一个统一的   分类名称   。

交通工具  分为  自行车、汽车、轮船、火车......

2.2、类和对象的关系

        从抽象和具体的角度来说:

                类:抽象描述

                对象:具体实体,所以对象也被称作:   类的实例   

        从设计图和产品的角度来说:

                类:生产产品的设计图

                对象:按照设计图生产出来的一个具体的产品

3、创建类和对象

3.1、类的组成部分

属性(对应程序中的数据)

通过程序中的各种数据类型,来描述一个类的   特征   ,例如:汽车的颜色、汽车的排量、汽车的价格……

行为(对应程序中的操作)

通过程序中的方法(也就是面向过程视角中的函数),来执行这个类的对象能够做的『动作』。例如:汽车的行驶、汽车的鸣笛、汽车的启动、汽车的停泊……

Field = 属性 (面向对象) = 成员变量 (面向过程),Method = (成员)方法 = 函数

3.2、声明一个类

package edu.CS.javase.object.test;
public class Person {
    // 属性/成员变量
    // 暂时先不管声明属性的具体规则,像以前一样声明变量先使用
    int weight;
    //作用范围是整个类中
    //这个成员变量即使没有初始化系统也会为他分配初始值
    // 方法/成员函数
    // 暂时先不管声明函数的具体规则,先声明一个最简单的
    // public:表示这个方法可以在任何地方被调用
    // void:表示这个方法没有返回值
    // 方法:吃
    public void eat(int food) {
        weight = weight + food;
    }
    public void say() {
        System.out.println("我现在的体重是:" + weight);
    }
}

3.3、声明一个对Person进行测试的类

package edu.CS.javase.object.test;
public class Run_Person {
    public static void main(String[] args) {
        //1.创建Person对象
        //第一步声明一个Person类这个类型的变量
        //第二步使用new关键字创建Person类的对象,对象赋值给第一步声名的变量
        Person person = new Person();  // new 后面的 类名() 是Person类的构造器
        //2.调用Person对象的eat方法
        person.eat(5);
        //3.调用Person对象的say方法
        person.say();
    }
}

4、包

包最重要的作用:区分同名的类

将不同的类放在不同包下

简单类名和全类名

        简单类名:不带包名的类名   Person

        全类名:包名.类名   edu.CS.javase.object.test.Person

5、类的成员之一:属性

5.1、声明属性的语法格式

修饰符 数据类型 属性名  =  初始化值;

修饰符     常用权限修饰符有:缺省(default)、private、protected、public  其它修饰符:static、final

数据类型      任何基本数据类型(int  Boolean) 或 任何引用类型数据

属性名      属于标识符,符合命名规则和规范即可

初始化值:声明一个属性时,如果没有明确对这个属性进行初始化设置,那么系统会给这个属性设置默认值,0、0.0、

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值