Java学习笔记之类和对象

Java中步骤:
1.定义一个类
2.定义属性(成员变量/实例变量)  ===  这个类有什么
3.定义方法(成员函数)  ====  做什么

定义类
类= 成员变量(have sth)+成员函数(can do sth)
public class VendingMachine {//类
    int price;
    int balance;
    int total;  
面向对象的思维方式:他有什么,可以提供什么
对象是实体,需要被创建,可以为我们做事情
类是规范,根据类的定义来创建对象

类(猫)
定义所有猫的属性
就是java中的类型
可以用来定义变量

创建对象
public static void main(String[] args) {
        VendingMachine vm = new VendingMachine();//创建对象变量
        vm.showBalance();
        vm.showPrompt();
        vm.insertMomey(100);
        vm.getFood();
        vm.showBalance();  

对象变量是对象的管理者
让对象做事情用“.”运算符
在没有引入类之前,变量是跟着代码走的,有类后,写在类里的成员变量,只是一个声明,变量在每一个对象里。

对象(这只猫
表达东西或事件
运行时响应消息(提供服务)

使用对象
1.创建对象
类名  对象名 =  new 类名()

类是以代码形式保存在计算机中的
而将类的信息放在内存中,那么这些信息被实例化 就叫做对象

2.使用对象
引用对象的属性: 对象名.属性

引用对象的方法:对象名.方法名()


对象 = 属性 + 服务
数据:属性或状态
操作:函数

oop特性
一切都是对象
程序就是一堆互相发送消息的对象
每个对象有自己的存储空间,里面是其他的对象
每个对象都有一个类型
所有属于某个特定类型的对象可以提供相同的服务

局部变量和成员变量的区别:
1.作用域不同。
成员变量是类中的 可以作用于不同的方法中
局部变量是方法中的  只能作用于方法中

2.初始值不同
成员变量有系统默认的初始值,可以不用进行初始值定义
局部变量没有默认的初始值,必须进行初始值定义

3.优先级不同
在一个类中,只能有一个成员变量名
在不同的方法中  可以有同名的局部变量
在调用时,局部变量的优先级高于成员变量


成员变量
类定义了所具有的变量,这些变量称作成员变量
每个对象有自己的变量,和同一个类的其他对象是分开的
在函数中可以直接写成员变量的名字来访问成员变量
如果是函数外面,这需要对象来调用
函数是通过对象来调用的
VendingMachine vm1 = new VendingMachine();//创建对象变量
        vm1.insertMomey(200); //建立一个临时的调用环境
        vm.getFood();
        vm1.showBalance();  
而临时调用环境是通过 this来实现的
this是成员函数的一个特殊的固有的本地变量,他表达了调用这个函数的那个对象。

本地变量和成员变量
本地变量:定义在函数内部的变量
生存期和作用域在函数内部

成员变量:定义在函数外部    VendingMachine vm1 =  new  VendingMachine(); //创建对象变量
生存期:对象的生存期
作用域:类内部的成员函数

类中有一个函数名字和类名字一样就是构造函数

函数重载
一个类可以有多个构造函数,只要他们的参数表不同
创建对象的时候给出不同的参数值,就会自动调用不同的构造函数
通过this()还可以调用其他的构造函数
一个类里的同名但参数表不同的函数构成了重载关系
 VendingMachine() //构造函数
    {
        total = 0;
    }
     
     VendingMachine(int price)
     {
         this();//可以自动调用另外一个同名的构造函数,但只能是函数的开头,而且只能用一次
         this.price = price;
     }
     
     VendingMachine(double price)
     {
         
     } 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值