面向对象基础(类,创建对象,重载和匿名对象)

面向对象基础(类,创建对象,重载和匿名对象)面向对象是相对于面向过程来讲的,指的是把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式。面向过程到面向对象思想层面的转变:面向过程关注的是执行的过程,面向对象关注的是具备功能的对象。面向过程到面向对象,是程序员思想上从执行者到指挥者的转变。如果从代码上来说,大概就是将具有一定属性和功能的对象封装成一个类。面向对象思想从概念上来讲分为三种:OOA:面向对象分析(Object Oriented Anal
摘要由CSDN通过智能技术生成

面向对象基础(类,创建对象,重载和匿名对象)

面向对象是相对于面向过程来讲的,指的是把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式。

面向过程到面向对象思想层面的转变:
  • 面向过程关注的是执行的过程,面向对象关注的是具备功能的对象。
  • 面向过程到面向对象,是程序员思想上从执行者到指挥者的转变。

如果从代码上来说,大概就是将具有一定属性和功能的对象封装成一个类。


面向对象思想从概念上来讲分为三种:

  • OOA:面向对象分析(Object Oriented Analysis)
  • OOD:面向对象设计(Object Oriented Design)
  • OOP:面向对象程序(Object Oriented Programming )

面向对象三大特征:

  • 封装性:所有的内容对外部不可见
  • 继承性:将其他的功能继承下来继续发展
  • 多态性:方法的重载本身就是一个多态性的体现

类的定义格式

类的定义格式:
	class 类名称{ 
		成员属性 
		成员方法 
	}

属性定义格式:
    数据类型 属性名;
属性定义并赋值的格式:
	数据类型 属性名 = 初始化值;

方法定义格式:
    权限修饰符 返回值类型 方法名(形式参数列表){
    	//方法体
    	return 返回值;//若返回值类型为void则不需要
	}

构造方法:(没有返回值类型)
    方法名(与类名相同)(形式参数列表){
    //方法体
	} 

对象的创建与使用

一个类要想真正的进行操作,则必须依靠对象,对象的定义格式如下: 
类名称 对象名称 = new 类名称(); 

如果要想访问类中的属性或方法(方法的定义),则可以依靠以下的语法形式: 
访问类中的属性: 对象.属性; 
调用类中的方法: 对象.方法(实际参数列表); 

创建对象在内存中的分析

Animal ani = new Animal();
new是在堆内存中开辟了新的空间,而ani是在栈中创建的对象的引用,存储着堆中新空间的地址。
另外,java中的GC(垃圾回收器)会自动检测对象在栈内存中是否有对应的引用,没有就会将对象回收,因此不需要手动回收。

方法的重载

方法名称相同,参数类型或参数长度不同,可以完成方法的重载。

方法的重载与返回值无关

方法的重载,可以让我们在不同的需求下,通过传递不同的参数调用方法来完成具体的功能。

构造方法的重载

一个类可以存在多个构造方法,参数列表的长度或类型不同即可完成构造方法的重载。

构造方法的重载,可以让我们在不同的创建对象的需求下,调用不同的方法来完成对象的初始化。

匿名对象

没有对象名称的对象就是匿名对象。

new 类名().成员变量名
new 类名().成员方法名

匿名对象只能使用一次,因为没有任何的对象引用,所以将称为垃圾,等待被GC回收。

只使用一次的对象可以通过匿名对象的方式完成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值