tij3笔记 002

•    用引用操纵对象
java视一切为对象,但操作的标识符实际上是对象一个的“引用”。拥有一个引用时不一定需要一个对象与它相关联。String s;创建的只是引用并不是对象。
理解:标识符就是“引用”,声明变量时就有了这个“引用”,未赋值就不是对象。
•    必须由你创建所有对象
将引用与对象相连接,用new关键字完成,创建新的对象:String s = new String(“asdf”)。用new创建的将存于堆。
对于基本类型,不需要new来创建变量:char c = ‘x’;这创建了一个并非“引用”的“自动变量”,其值存在于堆栈中。然而仍可以用基本类型所具有的“包装器类型”在堆中创建非基本对象:char c =‘x’;character C = new character(c);
创建一个数组对象时实际创造了一个数组 of 引用s,且每个引用都会被初始化为一个特定值,该值拥有自己的关键字null。在使用任何引用时,必须为其指定一个对象。创建数组 of 基本数据类型,这种数组所占的内存全部置零。
•    永远不需要销毁对象
java对象不具备和基本类型一样的生命周期,用new创建java对象时,它可以存活于作用域之外。java有一个垃圾回收器,用来监视new所创建的所有对象,并#辨别那些不会再被引用的对象,随后释放内存空间。
•    创建新的数据类型:类
class关键字创建新类。
类中设置两种类型的元素:域-数据成员-任何类型的对象;方法-成员函数。
1)域:引用一个对象的成员:objectReference.member。
类的某个成员是基本数据类型时,java会确保它获得一个默认值。仅当变量作为一个类的成员使用时,java才确保给它默认值。
2)方法:方法决定了一个对象能够接收什么样的消息。组成包括:名字,参数,返回值和方法体:
returntype methodname(/*argue list*/){
/*method body*/
}
方法名和参数表组合在一起唯一地标识某个方法。
java方法只能作为类的一部分来创建。方法只有通过对象才能被调用,且这对象必须能执行这个方法调用:objectname.methodname(arg1,arg2,arg3);这种调用方法的行为通常称为“发送消息给对象”。
参数列表中必须指定每个传入对象的类型及名字;除基本类型外,传递的实际上也是引用。
return关键字,若不想返回任何值,则指定方法为void,此时return只用来退出方法;若不是void,则无论在何处返回,编译器将强制返回一个正确类型的返回值。

程序是一系列带有方法的对象的组合,这些方法以其它对象为参数,并发送消息给其它对象。

•    构建一个java程序
定位构件:若类在发出调用的那个源文件中,则可直接使用之(java无“向前引用”,这个类可以在文件的后面再定义);若不在同一文件,使用import关键字,导入一个包,也即一个类库。

java所有的代码都必须写在类里。

static关键字:
1)提出:用new来创建对象时,它的数据存储空间才被分配,它的方法才可供调用。但有时希望只开辟存储空间存储特定数据(静态的,可引用的),有时希望方法不与对象关联(或说可脱离对象而调用),此时引入了static关键字。
2)引用:
引用一个static变量:一,通过类名;二;通过对象定位
若有
class StaticTest {
  static int i=47;
}
一,可StaticTest.i
二,可
StaticTest st1 = new StaticTest();
然后用st1引用。
前种“静态性”,且不能被用于非静态成员(如后者)。
同样的,引用一个static方法:一,同过类名;二,通过对象引用。
若有
class StaticFun{
  static void incr() {StaticTest.i++}
}
一,可StaticFun.incr();
二,可
StaticFan sf = new StaticFun();
sf.incr();
3)意义:static方法重要用法是在无对象创建的前提下就可以调用它。这一点对定义main()方法很重要,这个方法是运行一个应用时的入口点。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值