面向对象编程

面向过程:事物比较简单,可以用线性的思维去解决
面向对象:事物比较复杂,使用简单的线性思维无法解决
共同点:都是解决问题的一种思维方式;二者相辅相成,并不是对立的。
解决复杂问题、方便我们分析整个系统;具体到微观操作,仍然使用面向过程方式来处理。

对象和类的概念:

对象:是具体的事物
类:是对对象的抽象
eg:
类是一个图纸,对象是根据该图纸制造多个实物;
类是上海大众汽车,对象就是大家购买的一辆辆具体上海大众汽车。

创建对象:
类名 对象名 = new 类名();
Person p1 = new Person();

类的属性或者叫成员变量
作用范围:整个类体
定义格式:[修饰符] 属性类型 属性名 = [默认值];
在定义成员变量时可以对其初始化,
如果不对其初始化,Java使用默认的值对其初始化。

基本数据类型默认值
booleanfalse
double0.0d
float0.0f
long0L
int0
short0
byte0
charnull
内存分析:
栈:

存放:局部变量
先进后出,自下而上储存
方法执行完毕,自动释放空间

堆:

存放:new出来的对象
需要垃圾回收器来回收

方法区:

存放:类的信息(代码)、static变量、字符串常量等

this关键字:

作用:
this表示的是当前对象本身,更准确的说,this代表当前对象的一个引用;
普通方法中使用this:
区分类成员属性和方法的形参
调用当前对象的其他方法
位置:任意

包:

为什么需要package?
为了便于管理类:合适的类位于合适的包!
为了解决类的重名问题。
package怎么用?
通常是类的第一句非注释性语句
为什么需要import?
如果不使用import,我们如果用到其他包的类时,只能这么写:java.util.Date,代码量太大,不利于编写和维护。通过import可以导入其他包下的类,从而可以在本类中直接通过类名来调用。
import java.util.Date;
如果导入两个相同的类,只能使用包名+类名来显示调用的相关类
java.util.Date date = new java.util.Date();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值