Java面向对象

什么是对象?

世界万物只要是实体的都是对象,对象是具体的,能够看得见,摸得着

什么是类型?

类型可以说是分类,具有某些共同属性,具有相同行为的集合,类型是抽象的

在Java中class就是类型

总的来说,类是对象的抽象,对象是类的实体,对象有属性(静态),方法(动态)

属性指对象具有的各种特征 每个对象的每个属性都拥有特定值

方法指对象执行的操作

创建对象

Phone p=new Phone();

使用对象

引用对象成员:使用 . 进行操作

引用类的属性 对象名.属性 引用类的方法 对象名.方法名()

定义方法

public 返回值类型 方法名(){

//方法主体

}

void指没有返回值  其他的需要在方法主体return

 

调用方法必须有对象才能调用该对象的方法

如果是有返回值的必须在调用的时候有变量去接收

方法构造

带参方法构造的注意事项:

1.方法定义处的参数叫形式参数,方法调用处传的值叫实际参数

2.带参方法,参数个数可以有多个,多个参数之间用逗号隔开

3.带参方法,参数名字可以随意取,符合变量命名的规则

4.形参和实参名字可以不一样,但是数据类型要一致,个数要一样,顺序要一样

5.方法没有参数和方法有没有返回值是两码事,毫无关系

构造方法:

构造方法  创建对象使用
没有返回值类型
访问修饰符  构造方法名(需要与类名一致)(){
    //初始化代码
}
自定义构造方法 系统则不提供

系统默认给了一个无参构造方法,如果说使用自定义构造方法,系统则不提供,因此在自定义构造方法时,要自建一个无参的构造方法防止出错

调用有参构造,能够在创建对象时对属性进行赋值,将对象初始化

基本类型和引用类型再方法传参时的区别

 

 调用这个calc1相当于在栈内存中存储一个int类型的num   把n的值赋给num变化的是num的值   calc2也是在栈内存中存储一个student类型的student  把stu的值赋给student stu存储的是地址  到方法中根据age(类似索引的功能)在堆内存中找到对应数据进行修改

这边需要理解哪些数据存储在栈内存  哪些存储在堆内存,  以及要明白各个变量存储的是地址还是实际的值

 空指针错误

在对象为数组时,要注意需要数组内的元素不为null时才能使用  进行操作

所以要先将数组内的数new成对象

this关键字

this特指本对象,在形参和属性重名时用this.来表示是这个类的属性

this();调用的是无参构造   必须写在构造方法的第一句
this(name);-------调用形参是name的方法

方法重载


一个类中
方法名相同(方便调用),参数项不同(有区别,个数,类型,顺序),与返回值和访问修饰符无关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值