java学习路线__面向对象__类与对象__2

类与对象

一:类与对象基本定义

  • 类:类是一个模板,它描述一类对象的行为和状态。
  • 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。

二:类与对象实例化

声明并实例化对象有两种办法:

1.类名称 对象名称 = new 类名称 ();

2.声明对象  类名称 对象名称 = null ;
  实例化对象  对象名称 = new 类名称 ();
  new 给对象分配内存

备注:所有的对象只有实例化之后才可以使用。对象.属性  /  对象.方法

三:对象内存分析

堆内存空间: 保存真正的数据(对象的属性信息,)

栈内存空间: 保存的堆内存的地址  /  即堆内存的操作所有权  /  用来保存操作对象的名称

栈内存只能保存一个地址

对象,所有的引用数据类型(数组,类,接口)必须实例化开辟空间才可以使用

报错关键字:NullPointerException(没有实例化就使用对象)

四:引用传递初次分析

一块堆内存可以被多个栈内存所指向。例如:张三的小名叫狗剩,张三的手机被老师收走了,那么狗剩的手机也没有了。

所谓的垃圾空间就是没有任何的栈内存所指向的堆内存。垃圾内存多了就会影响系统的性能。
在java中有gc;垃圾回收机制。虽然有gc的强大回收机制,但是gc也会导致程序的性能下降,在开发设计中要注意合理的设置内存。

 五:private实现封装处理

1.类的组成:

  • 属性(新建对象就存在的)
  • 构造方法(创建对象只能执行一次构造方法,之后不能再使用)
  • 普通方法(创建对象之后可多次调用)

2.属性:让类的外部不能直接修改对象的属性  可以使用private来实现类的封装,封装的类外部不能直接修还属性, 需要使用set()和get()方法。

类的设计原则:类中的所有属性都是用private封装   私有属性需要被外部调用要有相应的set()和get()方法。

3.构造方法:任何对象都应该有与之对应的类,类要实例化对象时要提供构造方法。

1.构造方法与类名称相同

2.没有返回值类型声明(包括void)

3.至少存在一个构造方法 (当有了有参构造函数之后,如若不写无参数构造函数,系统不默认补全,需要手动补上无参构造函数

有参数构造方法可以预设对象的属性  不代表set函数没有作用了,set除了设置属性内容更重要的是修改属性内容。

4.普通方法:写普通方法,要符合切实实际,针对类的行为编写,一般短小精悍,一个方法写了百八十行绝对是方法的设计有问题了。

5.编写类中内容的顺序:写属性 写构造方法 写普通方法(包括set()和get()方法)

6.补充:为了使用方便 有时候会使用匿名对象 匿名对象使用之后因为没有任何栈空间的指向使用之后便成了垃圾空间。

new 类名();//匿名对象没有对象名,无法找到与之对应的栈空间,使用完成后变成了垃圾空间,具体使用学生还没用过

六:简单Java类

编写类时:

1.类名要能够明确表示该类的特性,直白简单。

2.所有的属性都要设置成priva, 所有的属性都应该有set()和get()方法。

3.类必须要有构造函数 ,无参数函数,有参数函数。

4.类中的返回不能使用out函数 , 最好有返回值。

web开发  分布式开发 到处都是简单java类 这是很重要的基础技能 。


记录时间:(2017年04月06日 12:01  类和对象很重要,要重视面向对象的类与对象的理解 )

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值