面向对象的理解

面向对象要经过完整的分析、设计之后才可以进行开发


面向对象的思维:做为这个问题来说,1、在这个问题中应该有哪些类 哪些对象 2、每种类和对象应该有哪些属性和方法   3、类和类之间具备哪些关系

面向对象种类

OOA: 面向对象的分析 OOD: 面向对象设计

OOP: 面向对象程序

面向对象的三大特征

封装(Encapsulation) 对外部不可见

继承(Inheritance) 扩展类的功能

多态(Polymorphism) 方法的重载、 对象的多态性 (方法的重载 )

类与对象

类:表示共性的产物 (抽象的、概念上的定义)

对象:对象就是一个个性的体现(该类事物的每个个体 实例 instance)

关系:没有类则肯定没有对象的产生,没有对象的产生类不能使,对象的所有活动范围在类中已经完整定义出来了。

类(相当于一个对象的操作图纸) ——>对象(按照此图纸产生出来的对象)——>被用户使用

类与对象的概念:

类的组成:属性 方法

class 类名称{

数据类型 属性;//声明成员变量(属性)

public 返回数据类型  方法名称(参数1,参数2.......){//定义方法的内容

程序语句;

return 表达式;

对象的生产:(对象声明之后,必须实例化才能使用)需要划分堆栈空间的

1.声明对象: 类名称 对象名称 = null;

2.实例化对象: 对象名称 = new 类名();  (会开辟对应的堆内存空间)

在堆内存中实际上存放的是对象的各个属性

类中的属性全部保存在堆内存中,全部的方法保存在全局代码区之中。

  内存划分(只要一出现关键字new 就表示要开辟新的内存空间)

public class ClassDemo{
	public static void main(String args[]){
		Person per = new Person();
	}
}





内存操作:为属性赋值

public class ClassDemo{
	public static void main(String args[ ]){
		Person per = new Person();
		per.name = "张三";//为属性赋值
		per.age = 30; 
		per.tell(); //调用类中的方法
	}
}


在对象的操作中实际上是存在引用传递的。(将一个堆内存空间的使用权交给了其他对象)


一个栈内存空间只能引用一个堆内存空间,但是一个堆内存可以呗多个栈内存所同时指向


操作类的两种情况:

访问属性: 对象名称.属性 = 值

访问方法: 对象名称.方法




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值