Java学习笔记之——面向对象

之前学cpp的时候已经学过了,在此对java的面向对象也记录熟悉一下哈~

之前博文《Android学习笔记之——Android Studio的安装(3.6版本)、Java的基本语法及Android的概述 》有介绍过如何基于android studio进行java开发,但是本博文不打算对代码进行运行(虽然建议学习的时候边看边敲)

目录

方法

方法的定义

方法的调用

使用方法的一些注意事项

方法的重载(Overload)

面向对象

概述

其他知识点笔记

数组

Java中内存划分

参考资料


方法

Java方法是语句的集合,它们在一起执行一个功能。

  • 方法是解决一类问题的步骤的有序组合
  • 方法包含于类或对象中
  • 方法在程序中被创建,在其他地方被引用
  • 方法定义的顺序无所谓
  • 一个方法内部不能定义另外一个方法
  • 方法必须调用才会执行

方法的定义

修饰符 返回值类型 方法名(参数类型 参数名){
    ...
    方法体
    ...
    return 返回值;
}

方法包含一个方法头和一个方法体。下面是一个方法的所有部分:

  • 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。如:public static
  • 返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字void
  • 方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
  • 参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。(如果有多个,用逗号)
  • 方法体:方法体包含具体的语句,定义该方法的功能。
  • return:首先停止方法,其次将后面的返回值返回去调用处

定义方法时。三个注意点:

  • 返回值类型
  • 方法名称
  • 参数列表

方法的调用

方法名称(参数);

方法调用的三种格式

  1. 单独调用:方法名称(参数)
  2. 打印调用:Sytem.out.println(方法名称(参数));
  3. 赋值调用:变量=方法名称(参数)

而对于返回值为void的方法,只能单独调用。

方法调用流程
有无返回值的方法调用

使用方法的一些注意事项

方法的重载(Overload)

就是说一个类的两个方法拥有相同的名字,但是有不同的参数列表(参数的数目、类型不同、多参数的顺序不同)

Java编译器根据方法签名判断哪个方法应该被调用。

方法重载可以让程序更清晰易读。执行密切相关任务的方法应该使用相同的名字。

重载的方法必须拥有不同的参数列表。你不能仅仅依据修饰符或者返回类型的不同来重载方法。所以方法的重载与参数的名称及返回值的类型无关。

面向对象

概述

程序中有面向过程和面向对象两种。

面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲历亲为,详细处理每一个细节。

面向对象:不关心具体的步骤

面向对象的三大特征:封装、继承、多态

类和对象

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。一组相关属性(状态信息)和行为(做什么)的集合。

类是对一类事物的描述,是抽象的。对象是一类事物的实例,是具体的。类是对象的魔板,对象是类的实例

类的定义

public class 类名称{

    成员变量
        变量类型 名称

    成员方法
        方法的声明(成员方法没有static)
}

成员变量:对应事物的属性。直接定义在类当中,在方法的外边

成员方法:对应事物的行为。不要写static关键字

一个类可以包含以下类型变量:

  • 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
  • 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
  • 类变量:类变量也声明在类中,方法体之外,但必须声明为static类型。

构造方法

每个类都有构造方法。如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认构造方法。

在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。

创建对象

其他知识点笔记

数组

  1. 数组是一种引用的数据类型
  2. 数组当中的数据类型必须统一
  3. 数组的长度在程序运行期间不可改变。

初始化方法:

  1. 动态初始化(指定长度)   
    数据类型 [] 数组名称=new 数据类型[数组的长度];
    动态初始化可以拆分
  2. 静态初始化(指定内容)
数据类型 [] 数组名称=new 数据类型[] (元素1,元素2,...);
静态初始化可以拆分
  • 直接打印数组的名称,得到的是数组对应的地址。
  • 数组[数字]才是对具体元素的引用,从0开始,注意是中括号

数组长度在程序运行过程中不可改变。通过数组.length来获取长度

Java中内存划分

参考资料

https://www.runoob.com/java/java-methods.html

发布了255 篇原创文章 · 获赞 281 · 访问量 31万+

猜你喜欢

转载自blog.csdn.net/gwplovekimi/article/details/105473782