Java学习【知识点3】

一:java中方法的介绍
1.1 函数:Java就是方法。

方法:
    就是完成特定功能的代码块

格式:
    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
        方法体;
        return 返回值;
    }

解释:
    修饰符:目前就写
        public static

    返回值类型:
        用于限定返回值的数据类型

    方法名:
        方便我们调用方法

    参数类型:
        形式参数    就是接收实际参数的变量(定义时候的)
        实际参数    就是实际参与运算的变量(调用时候的)

    方法体:
        就是完成功能的代码。

    返回值:
        就是功能的返回结果。

    return 返回值:
        结束方法,把返回值带给调用者

1.2 有明确返回值的方法调用:

    A:单独调用
        没有意义
    B:输出调用
        不是特别好,因为我们可能需要对结果进行进一步的操作。
    C:赋值调用
        推荐方案

1.3 书写方法注意的事项:

做到两个明确:
    返回值
        结果的数据类型
    参数
        参数的个数,以及类型

1.4 方法的注意事项:

    A:方法不调用不执行
    B:方法与方法是平级关系,不能嵌套定义
    C:方法定义的时候参数之间用逗号隔开
    D:方法调用的时候不用在传递数据类型
    E:如果方法有明确的返回值,一定要有return带回一个值                       

二:方法重载

方法重载:
        在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。

2.1方法重载特点:

        与返回值类型无关,只看方法名和参数列表
        在调用时,虚拟机通过参数列表的不同来区分同名方法            

三:数组(容器,用来存储相同类型数据的容器)
3.1 数组:

数组是存储同一种数据类型多个元素的集合
注意:数组既可以存储基本数据类型,也可以存储引用数据类型

3.2数组的定义格式:

    A:数据类型[] 数组名;
        int[] arr;
    B:数据类型 数组名[];
        int arr[];

    区别:念法上区别
        int[] arr;
            int类型的数组,arr
        int arr[];
            int类型的,arr[]

3.3数组初始化概述:

    A:Java中的数组必须先初始化,然后才能使用。
    B:所谓初始化
        就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。

3.4如何为数组进行初始化呢?

    A:动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
    B:静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。

3.5动态初始化:

    初始化时只指定数组长度,由系统为数组分配初始值。

    格式:
        数据类型[] 数组名 = new 数据类型[数组长度];

        数组长度其实就是数组中元素的个数。

3.6索引:

为了方便我们获取数组中的元素,数组就为每个元素进行了编号,从0开始。
这个编号,专业叫法:索引。(角标,下标)
有了索引如何获取元素呢?    
    格式:数组名[索引]  

3.7 静态初始化:

    初始化时指定每个数组元素的初始值,由系统决定数组长度。

    格式:
        数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};

    简化格式:
        数据类型[] 数组名 = {元素1,元素2,…};

3.8 数组操作常见的两个小问题

    A:
        ArrayIndexOutOfBoundsException:数组索引越界异常
        怎么产生的:
            你访问了不存在的索引。
        如何解决:
            修改你的访问索引。
    B:
        NullPointerException:空指针异常
        怎么产生的:
            引用已经不再指向堆内存
        如何解决:
            一般来说,只要是引用类型的变量,我们在使用前,都要先判断是否为null。
            如果不为null,才继续使用。

3.9数组遍历:

    依次输出数组中的每一个元素

数组遍历标准格式:
    for(int x=0; x<数组名.length; x++) {
        System.out.println(数组名[x]);
    }

四:面向对象思想
4.1:面向过程思想

一步一步的完成某个需求。这些步骤是我们要完成的。侧重于过程。
代表性语言:C语言

4.2:面向对象思想—指挥对象做事情
面向对象是基于面向过程的。

关注完成功能的类。侧重于结果。
代表性语言:Java语言

4.3:面向对象思想特点

面向对象是基于面向过程的编程思想

A:是一种更符合我们思想习惯的思想
B:可以将复杂的事情简单化
C:将我们从执行者变成了指挥者

五:类与对象
5.1:我们学习编程语言,就是为了模拟现实世界的事物,实现信息化。

5.2:我们是如何描述现实世界的事物的呢?

        属性  就是该事物的描述信息(举例,人,汽车)
        行为  就是该事物能够做什么(举例,人,汽车)

    人:(类)
        属性:姓名,性别,年龄
        行为:吃,睡,学习

    张三:(人这个类对应的实例,也叫对象)

    汽车:
        属性:颜色,品牌,价格
        行为:拉人,拉货,跑滴滴

    奇瑞qq:(是汽车类的一个实例,或者叫对象)

5.3:我们学习的Java语言最基本单位是类,所以,我们就应该把事物用一个类来体现。

5.4:类与对象

        类:是一组相关的属性和行为的抽象
        对象:是该类事物的具体体现。(实例)

        举例:
            对象:张三
            类:学生

六:类的定义
6.1类是用来描述现实世界事物的。

事物:
    属性  特征
    行为  功能

类:
    成员变量    特征
    成员方法    功能

类的组成:
    成员变量    类中方法外的变量
    成员方法    没有static修饰的方法

七:类的使用+内存图解(重要:new关键字的含义)
7.1 一个文件一个类

类的使用(拿学生类过来练习,并画内存图进行讲解)
使用一个类,其实是使用该类的成员。(变量和方法)

我们要想想用一个类的成员,就必须创建该类的对象。
如何创建类的对象呢?
    格式:
        类名 对象名 = new 类名();

            就表示创建了该类类型的一个对象。

    如何使用成员呢?
        成员变量:
            对象名.变量;
        成员方法:
            对象名.方法名(...);

八:成员变量和局部变量的区别:

    A:在类中的位置不同
        成员变量    类中方法外
        局部变量    方法内或者方法声明上
    B:在内存中的位置不同
        成员变量    堆内存
        局部变量    栈内存     
    C:生命周期不同
        成员变量    随着对象的存在而存在,随着对象的消失而消失
        局部变量    随着方法的调用而存在,随着方法的调用完毕而消失
    D:初始化值
        成员变量    有默认初始化值
        局部变量    没有默认初始化值

九:形式参数问题

数据类型:
    基本类型:4类8种。byte,short,int,long,float,double,char,boolean
    基本类型实际参数传递的时候传递的是这个基本类型的具体的值
    引用类型:类,接口,数组
    引用类型进行参数传递的时候,传递的是该引用类型的(实例对象)说白了就是这个对象的地址值 

十:匿名对象
匿名对象:就是没有名字的对象
是对象一种简写形式。

应用场景:
    A:调用方法(对象调用方法仅仅一次的时候)
    B:作为实际参数传递
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值