学习JAVA的第四天(基础)

目录

方法

方法的定义

方法的调用

参数

注意事项

方法的重载

练习

面向对象

类和对象

定义类的注意事项

封装

private关键字

this关键字

构造方法

标准的Javabean类

创建一个对象时,虚拟机做了什么?


方法

方法含义:方法是程序最小的执行单元

作用:提高代码的复用率

提高代码的可维护性

方法的定义

java 复制代码
public static void(返回值) 方法名(参数){
    方法体;
}

方法的调用

java 复制代码
方法体(参数); //形参和实参一一对应

参数

  • 形式参数 方法定义中的参数
  • 实际参数 方法调用中的参数

注意事项

  • 方法不调用就不会执行
  • 方法和方法之间是平级关系,不能嵌套调用
  • 方法的编写顺序和执行顺序无关
  • 方法的返回值类型是void,表示该方法没有返回值。
  • return语句下面不能编写代码

方法的重载

  • 在同一个类中,定义了多个同名的方法,这些同名的方法具有相同的功能
  • 每个方法具有不同的参数类型和参数个数,这些同名的方法,就构成了重构关系

练习

1.设计方法用于数组遍历,要求遍历的结果在一行上。

java 复制代码
public class Test11 {
    public static void main(String[] args) {
            int arr[] = {10,20,30,40,50};
            printArr(arr);
    }

    public static void printArr(int[] arr){
        int i = 0;
        //只打印,不换行
        System.out.print("[");
        for ( i = 0; i < arr.length ; i++) {
            if(i == arr.length-1){
                System.out.print(arr[i]);
            }
            else {

                System.out.print(arr[i] + ",");
            }
        }
        System.out.print("]");
    }
}

2.求数组的最大值,将最大值返回。

java 复制代码
public class Test12 {
    public static void main(String[] args) {
        int arr[] = {10, 99, 555, 32, 15, 65};
        int max = maxNumber(arr);
        System.out.println(max);
    }

    public static int maxNumber(int arr[]) {
        int i = 0;
        int max = arr[0];
        for (i = 1; i < arr.length; i++) {
            if (arr[i] > max) {
                max = arr[i];
            }

        }
        return max;
    }
}

3.判断数值中的数据是否存在,并将结果返回调用处

java 复制代码
public class Test13 {
    public static void main(String[] args){
        int arr[] = {1,5,6,7,8,4,8};
        boolean contain = getReturn(arr,56);
        System.out.println(contain);
    }
    public static boolean getReturn(int arr[],int number){
        for (int i = 0; i < arr.length; i++){
            if(arr[i] == number){
                return true;
            }

        }
        return false;
    }

}

面向对象

类和对象

类:是对象共同特征的描述

对象:真实存在的具体东西

在Java ,设计类才能获得对象

如何定义类?

java 复制代码
public class 类名{
//1.成员变量
//2.成员方法
//3.构造器
//4.代码块
//5.内部类
}

如何得到类的对象

类名 对象名 = new 类名();

如何使用对象

访问属性:对象名.成员变量

访问行为: 对象名.方法名()

定义类的注意事项

用来描述事物的类,专业名:Javabean类,在里面不需要写main()方法

编写main()方法的是测试类

封装

如何正确设计对象的属性和方法

原则:对象代表什么,就得封装对应的数据,并提供数据对应的行为。

private关键字

  • 是一个权限修饰符
  • 可以修饰成员
  • 被private修饰的成员只能在本类中访问

this关键字

区分成员变量和局部变量

构造方法

构造方法又称构造器和构造函数

作用:在创建对象的时候给成员变量进行赋值的。

格式:

java 复制代码
public class 类名{
   

       修饰符  类名(){
        方法体;
}


}

空参构造:没有编写任何构造方法,虚拟机会给我们加上空参构造方法。写了就不会

标准的Javabean类

  1. 类名需要见名知意
  2. 成员变量用private修饰
  3. 提供两个构造方法(无参构造方法,带全部参数的构造方法)
  4. 成员方法 (提供每个变量对应的setXxx()/getXxx() )

创建一个对象时,虚拟机做了什么?

  1. 加载class文件
  2. 声明局部变量
  3. 在堆内存中开辟空间
  4. 默认初始化
  5. 显示初始化
  6. 构造方法初始化
  7. 将堆内存的地址值赋值给局部变量
相关推荐
La Pulga3 小时前
【FreeRTOS源码学习笔记】任务延时列表
笔记·mcu·学习·嵌入式·freertos·实时操作系统
楚山之石4 小时前
【JCO】mpMRI 先行替代 TURBT 初始分期:BladderPath 随机试验让 MIBC 患者提前 45 天得到正确治疗
人工智能·学习·mri·医学影像
Peter-OK8 小时前
PostgreSQL学习笔记(入门-进阶-精通说明)
笔记·学习·postgresql
承渊政道8 小时前
Linux网络学习【Reactor反应堆模式】
linux·网络·学习·ubuntu·reactor
橙橙笔记9 小时前
具身智能的学习 - 完成一个机械臂 第1节
python·学习·机械臂·具身智能
Hhy_110713 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
山甫aa14 小时前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web
m0_5648768414 小时前
CMake学习
学习
只愿云淡风清14 小时前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
wangqiaowq18 小时前
Ontology 学习 二
学习