类和对象理解

1、定义

类(class)和对象 (object)是两种以计算机为载体的计算机语言的合称。  

对象:对象是用来描述客观事物的一个实体。 

类:具有相同属性和方法的一组对象的集合

2、格式

[修饰符] class 类名{    }

类名定义规则:

1、第一个单词必须是字母、下划线,后面的单词可以是字母、下划线、数字

2、所有单词的首字母必须大写

类内容

[修饰符] class 类名

{    

属性;

方法;

}

3、对象的创建

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

4、属性和方法的调用

属性方法出来

 print(ljt.sex);//调用属性

 ljt.Smile();//调用方法

5、方法的定义

[修饰符]  返回类型  方法名([参数列表])

{

方法体;

}

6、方法的操作

方法定义:

如果方法没有返回值,则此方法必须输出结果

如果方法有返回值,则此方法可以不输出结果,但是必须有返回值

返回值用关键字:return

方法调用:

调用无返回值的方法:对象名.方法名();

调用有返回值的方法:变量=对象名.方法名();

7、局部变量和成员变量

在一个函数内部定义的变量是内部变量,它只在本函数范围内有效,也就是说只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的。同样,在复合语句中定义的变量只在本复合语句范围内有效。这称为局部变量(local variable)

成员变量存储在堆内存的对象中,所以也叫对象的特有数据。. 静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。

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

作用域不同

局部变量的作用域仅限于定义它的方法

成员变量的作用域在整个类内部都是可见的

初始值不同

系统会给成员变量一个初始值

系统不会给局部变量赋予初始值

8、static

静态变量和实例变量两者的区别:

     1、静态变量在内存中只有一个内存空间,在加载类的过程中完成静态变量的内存分配;每创建一个新的实例对象,就会为实例变量分配不同的内存

     2、静态变量可以直接通过类名来访问,实例变量需要通过各个对象访问

静态方法和实例方法两者的区别:

  1. 静态方法只能访问静态变量;实例方法既可以访问实例变量,也可以访问静态变量
  2. 静态方法在Main方法中可以直接使用;实例方法在Main方法中必须通过对象调用

9、this

this的用法:

1、当成员变量和局部变量同名时,如果想调用成员变量,用this

2、当构造方法互相调用时,用this

10构造方法

构造方法是一种特殊的方法,它是一个与类同名的方法。 对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。 当类实例化一个对象时会自动调用构造方法。 构造方法和其他方法一样也可以重载。

定义:

方法名称和类名一致的方法,没有任何返回类型,并且也没有void。

特征:如果没用写构造方法  系统会默认提供一个无参的构造方法,方法里面是空的

           如果写 会覆盖系统默认的

作用:初始化成员变量

11方法重载

同一个类中的多个方法可以有相同的方法名称,但是有不同的参数列表,这就称为方法重载

方法的重载的规则:

  • 方法名称必须相同。
  • 参数列表必须不同。
  • 方法的返回类型可以相同也可以不相同。
  • 仅仅返回类型不同不足以称为方法的重载。

 13对象的引用

对象的引用“意思是定义一个变量,这个变量指向的是一个对象

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值