面向对象的基本----超级详细

Java对象
具体存在的实例就是一个对象,每个对象都有自己的属性和方法。
Java类
从对象中抽象出来的共有的属性和方法组成一个类。
注意:类是对象的一个抽象。对象是类的一个具体实例。
访问修饰符

类型private无修饰符protectpublic
同一类
同一包中的子类
不同包中的子类
不同包中的非子类

函数
函数也是方法,将一段代码包裹起来,这样的代码被称为方法
1.访问修饰符 返回数据类型 方法名(参数数据类型 参数名,参数数据类型 参数名2。。。。。){
方法体

如果带有参数,就要有返回值
2.访问修饰符 返回值类型 方法名(参数){
return 值;
}
方法的调用
A(){
方法名(数据);
}
1.如何使用java编写一个类 语法
访问修饰符 class 类名{

 //属性 
 访问修饰符  属性类型 属性名;
 eg:public  int size;
// 方法

}
如何使用java类创建一个对象 语法
类名 对象名 = new 类名();
如何调用对象中的属性 语法
对象名.属性名
、如何调对象中的方法 语法
对象名.方法名();
如何给对象中的属性赋值 语法
对象名.属性名=值;
例子:
创建一个学员类:

调用学员方法:
在这里插入图片描述
成员变量和局部变量
1、成员变量(全局变量):写在类下面,在类中任何地方都可以访问成员变量。
成员变量在未进行初始化值得时候存在默认值
Shiot int long byte 默认值0
Double float默认值0.0
Boolean 默认值是false
Char 默认 值‘\u0000’
引用数据类型的默认值null

2、局部变量:写在方法中变量,只能在该方法中被使用的变量叫做局部变量。
变量其作用的范围
成员变量和局部变量区别:
1、成员变量的作用域是整个类,而局部变量的作用域是定义它的方法
2、成员变量是定义在类下面,而局部变量是定义在方法中
3、如果局部变量与成员变量重名,那么在该方法中,使用的是局部变量(就近原则
4、成员变量在使用中可以不赋初始值,因为有默认值。而局部变量定义后,必须赋赋初值,否则不能使用。
java对象在内存中的分布
1.栈内存:Student stu ;
2.堆内存:new Student() ;
注意:
成员变量和方法会放在堆内存
声明对象的时候,对象放在栈内存
局部变量会放在栈内存
匿名对象的使用
匿名对象:创建对象时候,不声明对象的名称。即:直接new Student ;
1.自身会保存自身的内存地址的引用
2.只要有new关键字就会在堆内存中创建一个新的对象

传递
基本数据类型叫值传递
引用数据类型的传递叫引用传递或者叫地址传递
基本数据类型传递的是具体的值
引用数据类型传递的是引用地址

成员函数和构造函数之间的区别?
相同点:提高了代码重复利用率
不同点:
1、构造函数没有返回数据类型,也不能使用void进行代替,成员函数有返回数据类型,如果不需要返回数据类型的时候使用void进行代替
2、构造函数函数名一定要和当前的类名保持一致,而成员函数可以随便定义,但是要遵守标识符的命名规范
3、构造函数中间去了访问修饰符之后不能添加其他的修饰符,成员函数是可以的。
4、构造函数放在new关键字用来创建对象,成员函数可以通过对象名进行调用也可以通过方法内部进行调用

this关键字

  1. 成员变量名和局部变量相同的时候要做到区分
  2. This表示的是当前对象的引用地址 主要就是用来区分成员变量和局部变量名相同的时候
    This.成员变量
    This.成员方法
    This在本类当中进行使用来表示本类的内容,
    This语句
    This([数据]); 用来调用构造函数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值