6.11.2013

时值端午假期的第二天。

类:属性和方法

对象:声明并实例化   new

所有对象名称都在栈内存中保存,而对象具体的内容保存在堆内存中,必须使用new关键字才能开辟内存空间。

更准确的说栈内存保存的是堆内存空间的访问地址。

两个栈内存可同时指向一个堆内存。

封装性:

为属性封装、为方法封装

只要是被封装的属性,则必须通过setter和getter方法设置和取得。

构造方法:

在面向对象程序中构造方法主要的作用是为类中的属性初始化。

public class ConsDemo02{

  public static void main (String[] args){

   Person per= new Person(“张三”,30);//调用构造方法,传递两个参数

   per.tell()      //输出信息

     }

}

匿名对象:

   

public class ConsDemo02{

  public static void main (String[] args){

    new Person(“张三”,30).tell(); //匿名对象

     }

}

匿名对象没有任何栈引用,只使用了堆内存。

所以此对象在使用一次后就等待被垃圾回收机制回收。

作用:

匿名对象在实际开发中基本上都是作为其他类实例化对象的参数传递的。对象不管是匿名的或非匿的都必须开辟堆内存空间之后才可以使用。

 

编写类 测试类  使用类

 

public class ExampleDemo{

    public static vode main(String[] args){

           

String 首字母大写因此为一个类。

String str1="hello"

String  str2= new String("hello")

str1 ==str2  为false

因为使用的不同的堆内存空间  值相同    因此==是用来进行地址比较的

println(+(str.equals(str2))) 进行内容比较

 "hello".equals("hello") 为true  说明一个字符串可以调用String类中的方法(equals是String类中的方法),也就证明一个字符串就是Sting类中的匿名对象。

 

String str1="hello" 使用直接赋值之后,以后声明的字符串内容相同,则不会开辟新的内存空间。

            以上操作称为共享设计。

如果使用new关键字则开辟新的内存空间。

String类进行操作时,字符串的内容一但声明则不可改变

str=str+"world"   结果为helloworld  (此值是别一内存空间 断开原来的空间连接新的内存空间)

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值