Java基础6

一、类中的方法

      1、实例方法

                格式:

                     访问限制修饰符  方法的返回值类型  方法名称(参数列表){方法体}

                1.访问限制修饰符--public  缺省的【没有写】

                2.方法的返回值类型--就是方法的执行结果类型

                1.有返回值时,方法的返回值类型一定是方法执行结果的具体类型

                        方法的返回值类型可以是基本类型,复合类型

                        方法体中的最后一句话一定是return xxxx;

                2.没有返回值,方法的返回值类型使用void代替。

                3.方法名称--合法的标识符【首字母小写,从第二个单词开始首字母大写】

                4.(参数列表)--用来接收方法之外的数据进入本方法参与运算【找帮手】

                        参数实际上是变量,没有初始值,属于局部变量【数据类型  变量名称】

                        可以没有,也可以有,也可以有多个,多个参数之间用“,”

                5.方法体--编写具体实现过程的地方。

                格式:访问限制修饰符  方法的返回值类型  方法名称(参数列表){方法体}

                访问限制修饰符--public  缺省的【没有写】

                方法的返回值类型--就是方法的执行结果类型

                没有返回值,方法的返回值类型使用void代替。

                方法名称--合法的标识符【首字母小写,从第二个单词开始首字母大写】

                (参数列表)--用来接收方法之外的数据进入本方法参与运算【找帮手】

                可以没有,也可以有,也可以有多个,多个参数之间用“,”

                访问限制修饰符还可以是缺省的【没有写】

                方法的返回值类型是基本类型

                方法体中的最后一句话一定是return xxxx;

                实例方法只能由对象来进行访问

        2.静态方法【类方法】

                使用static关键字修饰的实例方法就是静态方法【类方法】

                格式:访问限制修饰符  static 方法的返回值类型  方法名称(参数列表){方法体}

                静态方法【类方法】可以对象方法,也可以类名访问

        实例方法与静态方法【类方法】的区别?

                1.实例方法没有static ,静态方法【类方法】有static

                2.实例方法只能对象方法,静态方法【类方法】可以对象方法,也可以类名访问

                3.实例方法只在方法调用时分配运行空间,静态方法【类方法】在方法调用前已经分配好运行空间。

        3.构造方法

                  构造方法的作用就是为了创建对象

                  我们创建好一个java类之后,默认类体中就有一个默认的无参数构造方法存在。只是没有显示出来

                  格式:访问限制修饰符   类名(参数列表){方法体}

                  当类中出现的有参数的构造方法时,默认无参数的构造方法会被覆盖,此时我们如果需要无参数的构造方法时,就需要手动给出无参数构造方法

                当类中出现的有参数的构造方法时,默认无参数的构造方法会被覆盖,

                此时我们如果需要无参数的构造方法时,就需要手动给出无参数构造方法

二、方法重载

        在同一个类中,方法的名称相同,参数不同这种现象叫方法重载。

        注意:方法重载与方法的返回值类型没有关系,与方法的参数有关

        方法的名称相同 ,方法的参数个数、参数类型

package com.wanxging.test1;

public class FangFaChongZai {
	//构造方法重载
	public FangFaChongZai(){}
	public FangFaChongZai(String name){}
	public FangFaChongZai(int age){}
	//实例方法重载
	public  void method1(){}
	public  int method1(int num){return 100;}
	public  char method1(int num,char ch){return 'A';}
	public  char method1(char ch,int num){return 'A';}
	//静态方法重载
	public static void staticmethod1(){}
	public static int staticmethod1(int num){return 100;}
	public static char staticmethod1(int num,char ch){return 'A';}
	public static char staticmethod1(char ch,int num){return 'A';}
}

三、同一个类中方法与变量的调用关系

类中可以包含两个基本元素--变量和方法

1.方法里面调用变量

 构造方法中可以调用实例变量,默认this.实例变量,可以省略this

 构造方法中可以调用静态成员变量,默认类名.静态成员变量,也可以this.静态成员变量,可以省略类名/this

 构造方法中可以调用局部变量,局部变量名称访问

 实例方法中可以调用实例变量,默认this.实例变量,可以省略this

 实例方法中可以调用静态成员变量,默认类名.静态成员变量,也可以this.静态成员变量,可以省略类名/this

 实例方法中可以调用局部变量,局部变量名称访问

 静态方法中不可以调用实例变量

 静态方法中可以调用静态成员变量,默认类名.静态成员变量,可以省略类名

 静态方法中不能出现this

 静态方法中可以调用局部变量,局部变量名称访问

2.方法里面调用方法

  构造方法中可以访问其他的构造方法

  构造方法中可以访问实例方法,默认this.实例方法,可以省略this

  构造方法中可以访问静态方法,默认类名.静态方法,也可以this.静态方法,可以省略类名/this

  实例方法中可以访问构造方法,new+构造方法

  实例方法中可以访问其他的实例方法,默认this.实例方法,可以省略this

  实例方法中可以访问静态方法,默认类名.静态方法,可以this.静态方法,可以省略类名/this

  静态方法中可以访问构造方法,new+构造方法();

  静态方法中不能访问实例方法

  静态方法中不能出现this

  静态方法中能访问其他的静态方法,默认类名.静态方法,可以省略类名

总结:静态方法中不能访问实例元素【实例变量/实例方法】

     静态方法中不能出现this

为什么静态方法中不能访问实例元素?

原因是静态方法的内存分配时机早于实例元素的内存分配时机。

四、对象

对象的定义

1.对象是由我们自己定义的类来创建出来的。

2.对象实际上就是类的具体实现。

例如:修建大楼时绘制的设计图纸就是类,根据设计图纸修建起来的真实的可以住人的大楼就是对象。

类--抽象【抽取象什么一样的东西】--模板【设计图】

对象--实现--实例【楼房】

3.没有类就没有对象

4.一个类可以创建出多个对象

5.类是对象的模板,对象是类的真实表现

对象的作用?

调用类中的变量和方法

如何创建对象?[new]

1.当前类中--new+构造方法---this

2.其他类中--new+构造方法

格式  :  new  构造方法( [参数值] );

对象访问变量

1.局部变量在其他类中方法里面,不能访问。

2.实例变量只能对象访问

3.静态变量类名访问,可以对象访问

4.实例变量在同一个类的多个对象之间不能数据共享

   静态变量在同一个类的多个对象之间能数据共享

对象访问方法

1.构造方法的访问--new

2.实例方法只能对象访问

3.静态方法类名访问,可以对象访问

4.有参数方法,需要传递参数【个数,类型】【要什么,给什么】

5.有返回值,方法体中的最后一句是return,返回的数据值要与方法的返回值类型匹配,

  调用有返回值的方法需要定义变量来接收方法的返回值【给什么,收什么】

对象的内存分配原理

                                                                                                                                                                                                                                                                                                                                                         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值