java面向对象编程初级

方法重载(Overload)

基本介绍

Java中允许同一个类中,多个同名方法的存在,但要求形参列表不一致。

重载的好处

  1. 减轻了起名的麻烦
  2. 减轻了记名的麻烦

可变参数

1.基本概念

Java允许将同一个类中多个同名同功能但参数个数不同的方法,封装成一个方法

2.基本案例

public class Test{
	public static void main(String[] args){

	int abc=sum(100,200);
	System.out.println(abc);
	}
 static int sum(**int... nums**){
				int x=0;
				for(int i=0;i<nums.length;i++){
					x+= nums[i];
				}
				return x;
	}

}

3.可变参数细节

  1. 可变参数的实参可以为0个或任意多个
  2. 可变参数的实参可以为数组
  3. 可变参数的本质就是数组
  4. 可变参数和普通参数一起在形参列表中时必须放在最后
  5. 一个形参列表只能出现一个可变参数

类与对象

1.引出

单独变量来解决⇒

不利于数据的管理。

数组⇒

数据类型体现不出来

只能通过下标获取信息,对应关系不明确

根本原因:不能满足需求

2.概述

1.类就是数据类型【对象模板】

2.对象就是一个具体的实例

类⇒对象

1.创建一个对象

2.实例化一个对象

3.把类实例化

3.对象内存布局

![E%WQ 1 I 1I 1I]JD2N}`2R0%I)MV.png](https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b33559a8-bf46-4306-ab84-e10b7bfe4768/EWQ1IJD2N2R0I)MV.png)

4.对象

1.先声明再创建

Cat cat ;

cat=new Cat();

2.直接创建

Cat cat=new Cat();

Person p1=p2;

5.流程分析

  1. 加载Person类信息(Person.class)只会加载一次
  2. 在堆中分配空间
  3. 完成对象初始化
  • 3.1默认初始化 age=0 name=null
  • 3.2显式初始化 age=90 name=null
  • 3.3构造器初始化 age=20 name=小倩
  1. 在对象在堆中的地址返回给p(对象名;对象的引用)

作用域

1.基本使用

  1. 在java编程中,主要的变量就是属性(成员变量)和局部变量

  2. 局部变量是指在成员方法中的变量和代码块中的变量

  3. java中作用域的分类

    全局变量:也就是属性,作用域为整个类体

    局部变量:除了属性之外的其他变量,作用域为定义他的代码块中

4.全局变量可以不赋值,直接使用,因为有默认值,局部变量必须赋值后才能使用

2.注意事项

  1. 属性可以和局部变量重名,访问遵循就近原则

  2. 在同一个作用域中,一个方法的两个成员变量不可以重名

  3. 属性生命周期较长,伴随着对象的创建而创建,伴随着对象的销毁而销毁;

    局部变量生命周期较短,伴随着它的代码块的执行而创建。即在一次方法调用过程中

  4. 作用域不同

全局变量可以被本类使用,或其他类使用
局部变量只能在本类中对应的方法中使用
  1. 修饰符不同
全局变量可以加修饰符
局部变量不可以加修饰符

构造器

1.基本语法

方法体

}

2.注意事项和使用细节

  1. 一个类可以有多个不同的构造器(构造重载)
  2. 构造器名要和类名完全一致
  3. 构造器没有返回值
  4. 构造器是完成对象的初始化,并不是创建对象
  5. 在创建对象时,系统自动的调用该类的构造方法
  6. 如果程序员没有定义构造器,系统会自动给类生成一个默认无参构造器(默认构造器)

}

7.定义了构造器之后,就不能再使用默认的无参构造器。

this关键字

this代表当前对象

  1. thist关键字可以用来访问本类的属性、方法、构造器
  2. this用于区分局部变量和属性
  3. 访问成员方法的语法:this.方法名(参数列表)
  4. 访问构造器语法:this(参数列表)【只能在构造器中使用另一个构造器】必须放在构造器第一个语句
  5. this不能在类定义的外部使用,只能在类定义的方法中使用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值