前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Java】05 面向对象

【Java】05 面向对象

作者头像
Demo_Null
发布2020-09-28 11:03:31
3790
发布2020-09-28 11:03:31
举报
文章被收录于专栏:Java 学习

Java是纯粹的面向对象编程语言,完全支持面向对象的三大基本特征:封装、继承和多态。Java程序的组成单位就是类,不管多大的Java应用程序,都是由一个个类组成的。

一、方法

1.1 什么是方法

   将某个功能抽取出来,单独放到一对 { } 内,形成一个单独的功能。

1.2 方法的定义

格式:

代码语言:javascript
复制
修饰符 返回值 方法名(参数列表) {
    方法体···
    return ;
}

注意:   方法必须定义在类中方法外。   方法必须明确返回值类型(可以为空 void)、参数列表(可以为空 什么都不写)。   Java 里的方法不能独立存在,它必须属于一个类或一个对象

示例:

代码语言:javascript
复制
public class Hello {
	public void helloWorld(int a) {
        System.out.println(a);
    }
}

1.3 方法的调用

1.3.1 调用方式

直接调用:

代码语言:javascript
复制
方法名( );

赋值调用:

代码语言:javascript
复制
数据类型 变量名 = 方法名( );

输出语句调用:

代码语言:javascript
复制
System.out.println( 方法名( ) );
1.3.2 注意事项

   调用方法时可以给该方法传递一个或多个值,传给方法的值叫作实参,在方法参数列表,接收实参的变量叫作形参,形参的声明语法与变量的声明语法一样,形参只在方法内部有效。

1.4 方法重载

   同一个类中,允许存在方法名相同的方法只要参数列表不同即可,与修饰符和返回值类型无关。

注意:   参数列表不同:参数个数不同、数据类型不同、顺序不同   JVM会根据参数列表来调用对应的方法

示例:

代码语言:javascript
复制
public static void print() {}
public static int print(int a) {}
public static int print(int a, int b) {}
public static void print(double a) {}

二、面向对象与面向过程

2.1 面向过程

   什么事情都是自己做。即:买菜 ⇨ 择菜 ⇨ 洗菜 ⇨ 炒菜 ⇨ 吃菜

2.2 面向对象

   只关心结果不关心过程。即:找个保姆 ⇨ 保姆做菜 ⇨ 吃菜

2.3 注意

   面向过程:更强调解决问题的基本步骤,强调问题的解决方式,更强调的是方法,自顶向下,不断分解。    面向对象:更强调解决问题的主体,更强调谁来解决这个问题,更强调的是对象,自顶向上,不断拼装。

三、类与对象

   在Java语言中,除基本数据类型值之外,一切都是对象,而对象就是面向对象程序设计的中心。

2.1 概述

2.1.1 什么是对象

   对象(Object)是一个抽象概念,表示任意存在的事物。世间万物皆对象!世界中客观存在的事物都是对象。通常将对象划分为两个部分,即静态部分与动态部分。静态部分被称为“属性”,任何对象都具备自身属性,这些属性不仅是客观存在的,而且是不能被忽视的。动态部分指的是对象的行为,即对象执行的动作。

2.1.2 什么是类

   类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体被称为类。在Java语言中,类包括对象的属性和方法。类中对象的属性是以成员变量的形式定义的,对象的行为是以方法的形式定义的。

2.1.3 综述

   具有相同或相似性质的一组对象的抽象就是类,类是对一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的个体,因而也称为实例(instance)。对象的抽象化是类,类的具体化就是对象,也可以说类的实例是对象。类用来描述一系列对象,类概述每个对象应包括的数据,类概述每个对象的行为特征。故,可以把类理解成某种概念、定义,它规定了某类对象所共同具有的数据和行为特征。

2.2 定义

2.2.1 定义一个类
代码语言:javascript
复制
public calss 类名 {
    //成员变量
    //成员方法
}

注意:   成员变量的定义在类中方法外。   局部变量的定义在方法中。   被 static 修饰的方法称为静态方法,可以直接使用 类名.方法名() 调用。

示例:

代码语言:javascript
复制
public class Add {
    //成员变量
    int a = 1;
    int b = 2;
    int sum;
    
    //成员方法
    public void add() {
        sum = a + b;
    }
}

// 这个类中没有 main() 方法,所以不能直接运行。
2.2.2 对象的产生与使用

语法:

代码语言:javascript
复制
// 创建对象
类名 对象名 =  new 类名();

// 对象访问类中的成员
对象名.成员变量;
对象名.成员方法();

注意:   成员变量有初始值

数据类型

初始值

整数

0

浮点数

0.0

字符

‘\u0000’ (空白字符,不是空格)

布尔

false

引用类型

null

  成员变量:有默认值,位于堆中,随着对象的创建而创建,随着对象的消失而消失。   局部变量:没有默认值,必须先赋值再使用,位于栈中,随着方法的调用而存在,随着方法调用结束而消失。

示例:

代码语言:javascript
复制
public class Test {
    public static void main(String[] args) {
        //创建对象
        Add add = new Add();        //add 中存储的是一个地址值
        
        //这是局部变量
        int c = 3;
 
        //使用成员变量
        add.a = 2;
        add.b = c;
        
        //使用成员方法
        add.add();
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、方法
    • 1.1 什么是方法
      • 1.2 方法的定义
        • 1.3 方法的调用
          • 1.3.1 调用方式
          • 1.3.2 注意事项
        • 1.4 方法重载
        • 二、面向对象与面向过程
          • 2.1 面向过程
            • 2.2 面向对象
              • 2.3 注意
              • 三、类与对象
                • 2.1 概述
                  • 2.1.1 什么是对象
                  • 2.1.2 什么是类
                  • 2.1.3 综述
                • 2.2 定义
                  • 2.2.1 定义一个类
                  • 2.2.2 对象的产生与使用
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档