一、进入java的世界
1.你要做的事情:
编写源代码Party.java -》 编译:javac Party.java,产生Party.class文件(eclipse是自动编译的,.class文件存放在Path路径下)-》在某个jvm上执行:java Party
2.一些java基本语法的东西:
(1)java中的Integer和boolean并不相容,所以不能用整数类型作为条件判断的条件,只能用boolean值。比如下面的写法就是错的。
1 int x = 1; 2 while(x){ 3 // 4 }
(2)print和println的区别:println会在最后面插入换行。
二、拜访对象村
(1)类与对象的区别
(2)垃圾回收机制:创建对象时,它被会存放在称之为堆(heap)的内存区域中。java有内存回收机制。当它察觉某个对象不会再被用到,就会标记可回收。当内存不足时,就会清理。
(3)public、static、final:在任何类中的任何程序都可以存取public static方法。任何变量只要加上public、static和final,都会变成全局可用的常数。
三、认识变量
(1)变量的类型:primitive和对象引用类型。
primitive主数据类型有8种:boolean、char、byte、short、int、long、float、double。
对象引用变量保存的是存取对象的方法,所以b=c也只是传递的存取方法,让c也指向b指向的对象。ps:数组也是对象,不管里面放的是primitive还是对象引用类型。
(2)创建对象的数组时,很容易犯的一个错误:
1 Book[] myBooks = new Books[]; 2 myBooks[0].title = "harry.potter";
然而此时myBook[0]并没有引用一个对象,可以理解为我们的myBooks引用了一个书架,但是还没有书让你来引用呢~
1 Book[] myBooks = new Books[]; 2 myBooks[0] = new Books(); 3 myBooks[0].title = "hp";
四、对象的行为
(1)实参与形参(argument and parameter):实参是传给方法的值,当它传入方法后就成了形参。
(2)java是通过值传递的,也就是拷贝传递。
(3)数据隐藏:可通过.符号直接存取实例变量如cat.height,这很危险,最好强迫必须通过getter和setter,然后把实例变量标记为private。
(4)初始化:数字的primitive的预设为0,包括char哦。boolean的预设为false,对象引用则为null。
(5)实例变量与局部变量(声明在方法中的变量)的区别:最重要的一点,局部变量没有预设值,如果在变量被使用之前没有初始化,会出现编译错误。
(6)==和equals():当判定两个primitive主数据类型是否相等,用==,当判断两个引用变量是否引用到堆上同一个对象,用==,当需要知道两个对象是否真的相等,就要用equals()。