方法的重载

方法的重载

1.概述:方法名相同,参数列表不同

2.参数列表不同:

  • 参数个数不同
  • 参数类型不同
  • 参数类型的顺序不同

3.判断方法是否为重载方法,和以下两点有关

  • 和返回值类型无关
  • 和参数名无关

4.如何使用

  • 功能一样,实现细节不一样,考虑用重载方法
public class Demo01 {
    public static void main(String[] args) {
        sum(1,2);
        sum(1,2,3);
        sum(1,2,3,4);
    }
    //两个整数相加
    public static void sum(int a,int b){
        int sum = a+b;
        System.out.println("sum = " + sum);
    }

    //三个整数相加
    public static void sum(int a,int b,int c){
        int sum = a+b+c;
        System.out.println("sum = " + sum);
    }

    //四个整数相加
    public static void sum(int a,int b,int c,int d){
        int sum = a+b+c+d;
        System.out.println("sum = " + sum);
    }

}

面向对象(java核心思想)

1.面向对象是一种编程思想,就是把别人封装好的具有特定的功能,直接拿来处理问题,与面向过程不同的是,不需要关注其功能怎么实现的,只需要拿来直接使用,方便了编写程序

2.使用方法:

  • new一个对象,点使用

    Scanner sc = new Scanner(System.in);
    sc.nextInt();
    
  • 当调用的功能是静态的(static),无需new,直接类名调用

  • System.out.println(Arrays.toString(arr));
    

3.因为很多功能别人都封装好了,直接调用省事,方便.

4.一些例子:

​ a.洗衣服

  • 面向过程:拿盆儿,倒水,拿衣服,拿搓衣板,手搓
  • 面向对象:找一个全自动洗衣机

类和对象

类(class)

1.概述:一类事物的抽象表示形式

2.属性(成员变量):这类事物有啥

  • 定义位置:类中方法外
  • 作用范围:作用于整个类
  • 可以不用初始化就可以使用(有默认值)
  • 定义格式:数据类型 变量名

3.行为(成员方法):这类事物能干啥

  • 去掉static,定义格式和调用方式和之前方法的一样

对象

1.概述:一类事物的具体实现

2.使用:

  • 导包 import 包名.包名.类名(同一个类不需导包,不同的类需要导包,java.lang包不需要导包)

  • 创建对象:想要用哪个类中的成员,就在哪个类new对象

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

  • 调用对象

    对象名.成员名

匿名对象

没有等号左边的对象

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

1.定义位置不同

​ 局部变量:方法内部及参数位置

​ 成员变量:类中方法外

2.初始化值不同

​ 局部变量:没有默认值,需要手动赋值才能使用

​ 成员变量:有默认值

  • 整数:0
  • 小数:0.0
  • 字符:‘\u0000’
  • 布尔:false
  • 引用:null

3.作用范围不同

​ 局部变量:只作用于方法内部,别的方法用不了

​ 成员变量:作用于整个类

4.内存位置不同

​ 局部变量:在栈中

​ 成员变量:在堆中

5.生命周期不同

​ 局部变量:随着方法的调用而产生,随着方法的调用完毕消失

​ 全局变量:随着对象的创建而产生,随着对象的消失而消失

封装

1.面向对象三大特征: [封装] 继承 多态

2.封装思想:

​ 隐藏对象内部复杂性,只对外提供公开,公共的接口,便于外界调用,提高了系统的可扩展性,可维护性,安全性.把细节隐藏起来,该暴露的暴露出来(提供给外界的接口),我们不需要关注细节怎么实现,只关注公共的接口怎么调用

3.private:最具有封装思想的关键字

​ 将属性用private修饰,此时属性为私有成员,外界不能直接调用,相当于将细节隐藏了起来,

公共接口调用:

  • setxxx() -> 为属性赋值
    该暴露的暴露出来(提供给外界的接口),我们不需要关注细节怎么实现,只关注公共的接口怎么调用

3.private:最具有封装思想的关键字

​ 将属性用private修饰,此时属性为私有成员,外界不能直接调用,相当于将细节隐藏了起来,

公共接口调用:

  • setxxx() -> 为属性赋值
  • getxxx() -> 获取属性值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值